在 Java 8 应用程序中使用 org.apache.log4j,我希望每小时创建一个新的日志文件,其名称例如:“mylog.log.2014-09-24-18”。 我读到我需要使用 DailyRollingFileAppender,但是当我启动应用程序时,日志文件被命名为“mylog.log”。
这是我的 log4j.properties 文件的内容:
# Set root logger level and its appenders
log4j.rootLogger=DEBUG, file
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.file.Append=true
log4j.appender.file.File=mylog.log
log4j.appender.file.encoding=UTF-8
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
你能告诉我如何实现吗?
最佳答案
我设置了 DatePattern
至 log4j.appender.file.DatePattern='.'yyyy-MM-dd-HH-mm
,我第一次登录时,日志写入了mylog.log,一分钟后,日志写入了mylog.log.2014-09-24-10-42
.所以我认为你的日志第一次写入mylog.log,一个小时后,系统会生成一个名为'mylog.log.2014-09-24-10'
的文件。 .
关于java - log4j DailyRollingFileAppender 不创建具有日期模式的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26007178/