0

我想使用具有大小和时间限制的 RollingFileAppender。因此,我为我的 xml 配置编写了以下附加程序。

<appender name="MyLogger" class="org.jboss.logging.appender.RollingFileAppender">
      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/> 
      <param name="File" value="${jboss.server.log.dir}/mylog_01.log"/>  
      <param name="Append" value="true"/> 
      <param name="MaxFileSize" value="100KB"/> 
      <param name="MaxBackupIndex" value="10"/> 
      <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
        <param name="FileNamePattern" value="mylog_01_%d{yyyy-MM-dd_HH-mm}.log" />
      </rollingPolicy>
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d %5p %t (%F[%M]\:%L) - %m%n"/>
      </layout>
</appender>

尽管我已经将我的 appender 与许多最近的示例进行了比较,但我找不到我的错误。我的apperder 生成第一个名为“mylog_01.log”的日志数据。我希望分别拥有以下日志数据,例如

mylog_01_2013-09-09_12-33.log
mylog_01_2013-09-09_12-34.log
mylog_01_2013-09-09_12-35.log
mylog_01_2013-09-09_12-36.log ... 

但是 appender 使用默认模式生成它们,例如ylog_01.log.1, mylog_01.log.2, mylog_01.log.3...

你能帮我解决这个问题吗?

4

1 回答 1

1

你把你RollingFileAppender的s搞混了。org.jboss.logging.appender.RollingFileAppender扩展了 Log4J 内置,org.apache.log4j.RollingFileAppender<rollingPolicy>配置元素是log4j-extrasorg.apache.log4j.rolling.RollingFileAppender的一个不相关类的一个特性。

标准的 Log4J RollingFileAppender 只对备份文件进行顺序编号,而不是基于时间的命名。

于 2013-09-09T14:35:37.923 回答