Log4j2:TimeBasedTriggeringPolicy策略最大值无效

时间:2020-04-30 14:08:14

标签: java spring logging log4j log4j2

“ appender.file-log.strategy”无法正常运行。我的文件夹包含30多个文件。你有什么建议吗?我最多要20个文件。 Log4j2版本:2.12.1

这是我的代码:

appender.file-log.type=RollingFile
appender.file-log.name=FileLog
appender.file-log.fileName=logs/myfolder/daily.log
appender.file-log.filePattern=logs/myfolder/daily.log.%d{yyyyMMdd}.%i.gz
appender.file-log.layout.type=PatternLayout
appender.file-log.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
appender.file-log.policies.type=Policies
appender.file-log.policies.date.type=TimeBasedTriggeringPolicy
appender.file-log.policies.date.interval=1
appender.file-log.strategy.type=DefaultRolloverStrategy
appender.file-log.strategy.max=20

2 个答案:

答案 0 :(得分:1)

我尝试过这种解决方案,它似乎运作良好。我删除了

appender.file-log.strategy.max=20

,我用这段代码替换了它(在appender.filelog.strategy.type之后):

appender.file-log.strategy.type=DefaultRolloverStrategy
appender.file-log.strategy.delete.type=Delete
appender.file-log.strategy.delete.basePath=logs/myFolder/
appender.file-log.strategy.delete.maxDepth=1
appender.file-log.strategy.delete.ifAccumulatedFileCount.type=IfAccumulatedFileCount
appender.file-log.strategy.delete.ifAccumulatedFileCount.exceeds=20

答案 1 :(得分:0)

配置对我来说似乎是正确的,我可能建议您检查是否正确设置了删除文件的权限,并尝试使用干净的文件夹进行一些测试,以确保没有预先存在的文件