Log4j - 14天后如何翻转日志文件

时间:2018-06-08 10:01:00

标签: java log4j

我正在使用log4j' s RollingFileAppender创建记录器。目前,回滚基于MaxFileSizeMaxBackupIndex进行。  我需要将生成的日志文件保留14天。

log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender    
log4j.appender.LOGFILE.File=/path/mylog.log 
log4j.appender.LOGFILE.MaxFileSize=50MB 
log4j.appender.LOGFILE.MaxBackUpIndex=30

1 个答案:

答案 0 :(得分:0)

您可以根据时间使用DailyRollingFileAppender进行翻转。但是,它只能,

  

可以指定每月,每周,每半天,每天,每小时,   或者小时翻转时间表。

并且似乎没有指定备份数量的选项。另外,

  

已观察到DailyRollingFileAppender显示同步   问题和数据丢失。 log4j extras伴侣包括替代品   这应该考虑用于新部署并进行讨论   在org.apache.log4j.rolling.RollingFileAppender的文档中。

例如:

log4j.appender.RollingAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.RollingAppender.File=app.log
log4j.appender.RollingAppender.DatePattern='.'yyyy-MM-dd

然后,您可以通过cron作业清除旧文件,如上所述here。请查看log4j Documentation一次。