2012-07-03 7 views
9

Sto registrando tutto l'SQL generato da nHibernate perché abbiamo un problema strano. Questo da solo genera enormi registri quindi sto cercando di accorciarli un po 'cercando di registrare solo le righe che contengono un determinato ID. Sembra ancora che tutto stia arrivando. Qualcosa sembra strano qui?Log4Net StringMatchFilter non sta filtrando nulla

<appender name="RollingFile" type="log4net.Appender.RollingFileAppender,log4net" > 

     <param name="File" value="nHibernate.txt" /> 
     <param name="AppendToFile" value="true" /> 
     <param name="DatePattern" value="yyyy.MM.dd" /> 

     <layout type="log4net.Layout.PatternLayout,log4net"> 
      <conversionPattern value="%d %p %m%n" /> 
     </layout> 

     <filter type="log4net.Filter.StringMatchFilter"> 
      <stringToMatch value="5764" /> 
      <acceptOnMatch value="true" /> 
     </filter> 

    </appender> 

    <logger name="NHibernate.SQL" additivity="false"> 
     <level value="DEBUG" /> 
     <appender-ref ref="RollingFile" /> 
    </logger> 

risposta

18

Si scopre che è necessario aggiungere questo codice:

<filter type="log4net.Filter.DenyAllFilter" /> 

Il blocco completo si presenta così:

<appender name="RollingFile" type="log4net.Appender.RollingFileAppender,log4net" > 

     <param name="File" value="nHibernate.txt" /> 
     <param name="AppendToFile" value="true" /> 
     <param name="DatePattern" value="yyyy.MM.dd" /> 

     <layout type="log4net.Layout.PatternLayout,log4net"> 
      <conversionPattern value="%d %p %m%n" /> 
     </layout> 

     <filter type="log4net.Filter.StringMatchFilter"> 
      <stringToMatch value="5764" /> 
      <acceptOnMatch value="true" /> 
     </filter> 

     <!-- need this here! --> 
     <filter type="log4net.Filter.DenyAllFilter" /> 

    </appender> 

    <logger name="NHibernate.SQL" additivity="false"> 
     <level value="DEBUG" /> 
     <appender-ref ref="RollingFile" /> 
    </logger> 
+2

Nel caso in caso in cui si dispone di un altro filtro, e , puoi spostare StringMatchFilter sopra l'altro, e credo che tu non abbia bisogno di in quel caso – sawe