如何删除N天前的log4j日志

 我来答
time陌言成殇
推荐于2017-11-27 · TA获得超过8.4万个赞
知道大有可为答主
回答量:1.4万
采纳率:91%
帮助的人:9309万
展开全部

您好,很高兴为您解答。

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


如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】

希望我的回答对您有所帮助,望采纳!

                                                                                                                            ~ O(∩_∩)O~

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式