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