无法使用 log4j DailyRollingFileAppender 将日期附加到文件名

2024-01-02

您好,我正在尝试使用 log4j DailyRollingFileAppender 将当前日期附加到文件名,但它不起作用。我使用了如下配置。请为此建议一个解决方案

特性

log4j.rootLogger = DEBUG, rollingAppender
log4j.appender.rollingAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.rollingAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.rollingAppender.File=F:/temp/app.log
log4j.appender.rollingAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.rollingAppender.layout.ConversionPattern=[%p] %d %c %M - %m%n

我期望日志文件为 app2014-11-07.log,但它仍然是 app.log


If you're using log4j 1.x, we strongly recommend that you use org.apache.log4j.rolling.RollingFileAppender https://logging.apache.org/log4j/extras/apidocs/org/apache/log4j/rolling/RollingFileAppender.html 1 instead of org.apache.log4j.DailyRollingFileAppender https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/DailyRollingFileAppender.html (may lose messages, Bug 43374 https://issues.apache.org/bugzilla/show_bug.cgi?id=43374).

所以你的appender的配置可以是:

log4j.rootLogger = DEBUG, rollingAppender
log4j.appender.rollingAppender=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.rollingAppender.rollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.rollingAppender.rollingPolicy.fileNamePattern=F:/temp/app%d{yyyy-MM-dd}.log
log4j.appender.rollingAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.rollingAppender.layout.ConversionPattern=[%p] %d %c %M - %m%n

Notes

  1. 在这种情况下,您需要添加相应的 jar (apache-log4j-extras-1.2.17.jar http://search.maven.org/remotecontent?filepath=log4j/apache-log4j-extras/1.2.17/apache-log4j-extras-1.2.17.jar).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 log4j DailyRollingFileAppender 将日期附加到文件名 的相关文章

随机推荐