阅读量:5
在log4j2中,可以通过使用Delete
策略来配置日志文件的删除操作。以下是一些常见的删除策略配置示例:
- 根据日志文件的最大存储空间删除旧的日志文件:
<DefaultRolloverStrategy> <Delete basePath="logs" maxDepth="2"> <IfFileName glob="logs/app-*.log" /> <IfLastModified age="7d" /> </Delete> </DefaultRolloverStrategy>
上述配置会删除logs
文件夹中的app-*.log
文件,且最后修改时间超过7天的文件。
- 根据日志文件数量删除旧的日志文件:
<DefaultRolloverStrategy> <Delete basePath="logs" maxDepth="1"> <IfFileName glob="logs/app-*.log" /> <IfAccumulatedFileSize exceeds="100 MB" /> </Delete> </DefaultRolloverStrategy>
上述配置会删除logs
文件夹中的app-*.log
文件,直到总文件大小超过100 MB。
- 根据自定义条件删除旧的日志文件:
<DefaultRolloverStrategy> <Delete basePath="logs" maxDepth="1"> <IfFileName glob="logs/app-*.log" /> <If condition="java.nio.file.Files.isRegularFile(java.nio.file.Paths.get($${basePath}), java.nio.file.LinkOption.NOFOLLOW_LINKS) && java.nio.file.Files.getLastModifiedTime(java.nio.file.Paths.get($${basePath}), java.nio.file.LinkOption.NOFOLLOW_LINKS).toMillis() <= 0" /> </Delete> </DefaultRolloverStrategy>
上述配置会删除logs
文件夹中的app-*.log
文件,如果文件存在且最后修改时间小于等于0。
以上是一些常见的log4j2删除策略配置示例,可以根据实际需求进行调整和扩展。