Отключить ведение журнала Log4Net для активной записи - PullRequest
4 голосов
/ 14 февраля 2011

Как отключить ведение журнала Log4Net для активной записи ...?

  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,Log4net"/>
  </configSections>
  <log4net debug="false">
    <root>
      <level value="DEBUG" />
      <appender-ref ref="LogFileAppender" />
    </root>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" >
      <param name="File" value="C:\Projects\MyProject\bin\Log.txt" />
      <param name="AppendToFile" value="true" />
      <rollingStyle value="Size" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="10MB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%-5p%d{yyyy-MM-dd hh:mm:ss} – %m%n" />
      </layout>
    </appender>
  </log4net>

Global.asax.cs

XmlConfigurationSource source = new XmlConfigurationSource("C:\Projects\MyProject    \\ActiveRecord.xml");
        ActiveRecordStarter.Initialize(source, typeof(User), typeof(Role));
        log4net.Config.XmlConfigurator.Configure();
        log.Info("Application Started");

1 Ответ

5 голосов
/ 14 февраля 2011

Если вы хотите полностью отключить ведение журнала, вы можете отключить ведение журнала в корневом логгере.

<root>
    <level value="OFF" />
</root>

Если вы хотите отключить только для Active Record, вам нужно выяснить пространство имен, которое использует Active Record (или, если они не следовали этому соглашению, имя регистратора, которое использует Active record).

Если речь идет о NHibernate, то следующая конфигурация делает свое дело:

<logger name="NHibernate" additivity="false">
    <level value="OFF"/>
</logger>
<root>
    <level value="DEBUG" />
    <appender-ref ref="LogFileAppender" />
</root>
...