设置日志文件名以包含当前日期

时间:2014-05-16 13:19:28

标签: java logging log4j

我想将log4j的日志文件名设置为具有当前日期。我不需要进行翻转,今天的日志文件应该以日期命名。 因此,我会每天获得一个单独的日志文件。

日志文件名格式为:

  

systemName_DDMMYYYY_moduleName.log

1 个答案:

答案 0 :(得分:1)

我知道的两种方法是: - 使用DailyRollingFileAppender ...

<appender name="roll" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="application.log" />
    <param name="DatePattern" value=".yyyy-MM-dd" />
    <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" 
          value="%d{yyyy-MMM-dd HH:mm:ss,SSS} [%t] %c %x%n  %-5p %m%n"/>
    </layout>
  </appender>

第二

包括apache-log4j-extras

log4j.appender.LOGFILE=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.LOGFILE.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.LOGFILE.RollingPolicy.FileNamePattern=/logs/application_%d{ddMMyyyy}_moduleName.log