1. 如果您使用的是Log4j,且采用的RollingFileAppender方式, 通过设置maxBackupIndex属性来指定要保留的日志文件数的最大值可以间接实现删除N天前的日志文件。
2. 如果您使用的是Log4j,且采用的DailyRollingFileAppender方式,由于该方式不支持maxBackupIndex,需要重新实现DailyRollingFileAppender,用以支持maxBackupIndex的设置。
3. 如果您使用的是logback,可以通过设置maxHistory实现删除N天前的日志。
4. 可以通过Linux的cron job实现定期删除文件,具体如下
# cd /etc/cron.daily
# vi logcron 输入如下内容
#!/bin/sh find /logs -type f -ctime +30 | xargs rm -rf (这里实现了删除30天之前文件的命令) 然后保存该文件,最后执行如下命令给该文件服务可执行权限
# chmod +x /etc/cron.daily/logcron
来源:oschina
链接:https://my.oschina.net/u/2266763/blog/701330