【问题标题】:how to append date to log file name using RollingFileAppender如何使用 RollingFileAppender 将日期附加到日志文件名
【发布时间】:2013-08-31 04:18:30
【问题描述】:

我正在使用 log4j RollingFileAppender,我正在尝试将日期附加到文件名

所以我附加了“-%d{yyyy-MM-dd_HH-mm}”。到 log4j.properties 中的活动文件名属性,如下所示,但是文件的生成名称为 mylog-%d{yyyy-MM-dd_HH-mm}.log 而不设置日期

log4j.appender.mylog.rollingPolicy.ActiveFileName=mylog-%d{yyyy-MM-dd_HH-mm}.log

任何帮助的想法??

【问题讨论】:

  • stackoverflow.com/questions/192456/…你问之前有没有问过谷歌或者搜索了一下?
  • 我之前看到过,它使用 Daily rolling appender,我正在使用 RollingFileAppender
  • 我不知道有任何 appender 实现支持 active 文件的基于日期的名称模式。您正在使用的 log4j extras rolling appender 和 TimeAndSizeRollingAppender 都允许您根据大小滚动并根据日期命名备份,但它们都需要当前活动日志文件的静态名称。

标签: java log4j


【解决方案1】:

如果您希望每天都有一个新的日志文件,请使用 DailyRollingFileAppender。当它创建一个新的日志文件时,它会重命名旧的并添加一个日期。 例如。 server.log 将重命名为 server.log.2013-08-28

log4j.rootLogger=INFO,Stdout, DAILY

log4j.appender.DAILY=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DAILY.File=${catalina.home}/logs/server.log
log4j.appender.DAILY.DatePattern='.'yyyy-MM-dd
log4j.appender.DAILY.layout=org.apache.log4j.PatternLayout
log4j.appender.DAILY.layout.conversionPattern=%d %-5p - %-26.26c{1} - %m %n

【讨论】:

  • 我不是每天都想要一个基于大小的新日志文件,所以我使用了 RollingFileAppender
  • 在你的问题上更准确,因为似乎没有人理解你想要什么。
  • 然后使用 MaxFileSize 和 DatePattern
猜你喜欢
  • 2011-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多