阅读量:6
在log4j中,可以使用org.apache.log4j.rolling.RollingFileAppender
来实现定时删除旧日志文件的功能。该类是log4j的RollingFileAppender的子类,支持基于时间的日志滚动策略。
以下是使用RollingFileAppender实现定时删除旧日志的步骤:
- 在log4j配置文件中,定义RollingFileAppender。例如:
<appender name="appenderName" class="org.apache.log4j.rolling.RollingFileAppender"> <param name="File" value="logFilename.log" /> <param name="MaxFileSize" value="10MB" /> <param name="MaxBackupIndex" value="10" /> <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> <param name="FileNamePattern" value="logFilename-%d{yyyy-MM-dd}.log" /> <param name="CleanHistoryOnStart" value="true" /> </rollingPolicy> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" /> </layout> </appender>
在上述配置中,MaxFileSize
表示单个日志文件的最大大小,MaxBackupIndex
表示保留的备份文件数量。
- 通过配置
rollingPolicy
来设置时间滚动策略。FileNamePattern
表示生成的日志文件名的格式。CleanHistoryOnStart
设置为true
表示在启动时清除历史日志文件。
通过上述配置,log4j将按照指定的时间格式生成日志文件,并在启动时删除旧的日志文件。