log4net按天生成日志及文件名改进方法

log4net的RollingFileAppender对象允许我们按天来生成日志文件,只需设置好.config文件即可:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
  <log4net>
    <!-- Logger -->
    <logger name="Logger1">
      <level value="ALL"/>
      <appender-ref ref="RollingLogFileAppender" />
    </logger>
    <!-- Appender -->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="Log.log" />
      <param name="appendToFile" value="true" />
      <param name="rollingStyle" value="Date" />
      <param name="datePattern" value="yyyyMMdd" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}: %m,line:%L%n"/>
      </layout>
    </appender>
  </log4net>
</configuration>

不完美的是生成的日志文件名如下:

引用内容 引用内容
Log.log20110803
Log.log20110805
Log.log20110806
Log.log

显然,除了当天的日志文件(Log.log)正常外,其他日志文件名的扩展名都有问题,有没有办法让日志文件名格式为"Log年月日.log"呢?再来修改下.config文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
  <log4net>
    <!-- Logger -->
    <logger name="Logger1">
      <level value="ALL"/>
      <appender-ref ref="RollingLogFileAppender" />
    </logger>
    <!-- Appender -->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="Log" />
      <param name="appendToFile" value="true" />
      <param name="rollingStyle" value="Date" />
      <param name="datePattern" value="yyyyMMdd&quot;.log&quot;" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}: %m,line:%L%n"/>
      </layout>
    </appender>
  </log4net>
</configuration>

生成的日志文件名如下:

引用内容 引用内容
Log20110803.log
Log20110804.log
Log20110805.log
Log


评论: 0 | 引用: 0 | 查看次数: 9041
发表评论
登录后再发表评论!