在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删除策略配置示例,可以根据实际需求进行调整和扩展。