log4net logger.IsInfoEnabled為true卻不寫入文件???


log4net logger.IsInfoEnabled為true調試信息卻不寫入文件???

配置是正確的,詳細配置如下:

<log4net>
    <appender name="DailyRollingFile" type="log4net.Appender.RollingFileAppender">
      <file value="log/daily.log" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <datePattern value="yyyyMMdd" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="3MB" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%M] - %message%newline" />
      </layout>
    </appender>
    <appender name="SQLRollingFile" type="log4net.Appender.RollingFileAppender">
      <file value="log/sql.log" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <datePattern value="yyyyMMdd" />
      <maxSizeRollBackups value="20" />
      <maximumFileSize value="5MB" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%M]  - %message%newline" />
      </layout>
    </appender>
    <root>
      <level value="DEBUG" />
      <appender-ref ref="DailyRollingFile" />
    </root>
    <logger name="NHibernate.SQL">
      <appender-ref ref="SQLRollingFile" />
      <level value="DEBUG" />
    </logger>
    <logger name="NHibernate">
      <level value="INFO" />
    </logger>
  </log4net>

 

 

  不知道什么原因,猜測是可能我的VS出問題了吧(其它項目也是一樣的配置可以生成調試信息),配置會生成文件,但是不記錄調試信息:

只有運行時修改一下這個配置才會生成調試信息,如下

<root>
      <level value="DEBUG" />
      <appender-ref ref="DailyRollingFile" />
</root>

 

將root節點level的value改為ALL,才會生成調試信息,否則生成的調試信息不回寫入文件daily.log中。

  已找到不寫入文件的原因,是由於引入第三方組件的問題引起的,我的是在配置文件中配置(web.config),第三方組件又把log4net包了一下,不知道腫么就把我的配置給覆蓋了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM