Java log4j:存档文件删除策略
我正在使用TimeBasedRollingPolicy和RollingFileAppender来滚动我的日志,并将其归档为myLogFileName..log.gz:Java log4j:存档文件删除策略,java,log4j,Java,Log4j,我正在使用TimeBasedRollingPolicy和RollingFileAppender来滚动我的日志,并将其归档为myLogFileName..log.gz: <appender class="org.apache.log4j.rolling.RollingFileAppender" name="myLogFile"> <param value="/var/log/my/myLogFileName.log" name="File"/> &l
<appender class="org.apache.log4j.rolling.RollingFileAppender" name="myLogFile">
<param value="/var/log/my/myLogFileName.log" name="File"/>
<rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
<param name="FileNamePattern" value="/var/log/my/myLogFileName.%d.log.gz" />
</rollingPolicy>
<layout class="org.apache.log4j.PatternLayout">
<param value="%d [%t] %-5p - %m%n" name="ConversionPattern"/>
</layout>
</appender>
我不明白的是,它是在哪里定义的,何时以及如何从文件系统中完全删除旧的归档文件
而且,如果我想始终只保留不超过一个月的文件-我可以在哪里设置它(使用log4j(extras))?
TimeBasedRollingPolicy
由定义。要使用该策略,此依赖项必须位于类路径上
RollingFileAppender
包括一个maxBackupIndex
属性,该属性指定要保留的最大翻滚备份文件数。但是,我认为在使用TimeBasedRollingPolicy
时不支持此属性。这意味着,当将RollingFileAppender
与TimeBasedRollingPolicy
一起使用时,appender不会删除旧的备份文件
如果您使用Logback作为日志记录实现(可能与htslf4j结合使用),那么您可以使用
向后退。我承认这个问题是在寻求log4j解决方案,但我不知道