我正在使用 log4j 登录我的 java 程序。我需要根据日期在路径中记录内容。例如,我需要一个错误日志作为文件名“error.log”,其路径应为“log/13/6 /11/error.log”当记录日期是 11/June/2013 时。我如何根据上述要求创建 log4j 属性文件?
问问题
382 次
2 回答
1
Log4j
提供了一个DailyRollingFileAppender
可以完成这项工作的。您可以配置为包装当前文件并根据日期和/或时间开始记录到新文件。
你log4j.properties
会看起来像(除其他外,如pattern)
log4j.appender.Appender2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.Appender2.File=app.log
log4j.appender.Appender2.DatePattern='.'yyyy-MM-dd
这将滚动昨天的文件,app.log.2013-06-10
而今天的文件将是app.log
.
由于文件名不能包含路径分隔符log/13/6/11/error.log
,因此无法将文件命名为。你可以考虑像app.log_13-6-11_error.log
log4j.appender.Appender2.File=app.log
log4j.appender.Appender2.DatePattern='_'yy-MM-dd'_error.log'
您当前的文件将被命名为app.log
.
于 2013-06-11T14:26:08.083 回答
0
那不支持开箱即用afaik。您可以编写自己的附加程序或使用由 cron 作业触发的简单脚本移动文件。
于 2013-06-11T15:25:40.443 回答