要保留最近3天的日志文件,每个文件大小不超过10MB,如何在log4j2.yml文件中配置?
我试过了,
filePattern: ${log}/${app}-archive/${app}-%d{MM-dd-yyyy}-%i.log"
...
Policies:
TimeBasedTriggeringPolicy:
interval: 1
modulate: true
SizeBasedTriggeringPolicy:
size: 10 MB
DefaultRolloverStrategy:
delete:
basePath: "${log}/${app}-archive"
maxDepth: 1
IfFileName:
glob: "*.log"
IfLastModified:
age: 3d
并且它在同一天最多只能创建 7 个存档并删除旧文件,即使它是今天的日志。如果 lastModified < 3d,有没有办法保留尽可能多的文件? 如 app-04-09-2021-8.log、app-04-09-2021-9.log、....app-04-09-2021-39.log 等。
请指导我。
答案 0 :(得分:0)
默认情况下,DefaultRolloverStrategy
将最多保留 max
配置属性的值,默认情况下为 7
,每个基于时间的翻转间隔,每天在您的用例中,如您的文件中所示模式,${app}-%d{MM-dd-yyyy}-%i.log
- max
属性仅适用于 %i
计数器。
为该属性提供更大的值,您认为合适的值取决于您的日志模式。例如:
DefaultRollOverStrategy:
max: 100
delete:
basePath: "${log}/${app}-archive"
maxDepth: 1
IfFileName:
glob: "*.log"
IfLastModified:
age: 3d
请参阅相关的 documentation。