如何配置 Log4J 只保留最近七天的日志文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何配置 Log4J 只保留最近七天的日志文件相关的知识,希望对你有一定的参考价值。

参考技术A log4j本来就可以设定保存10天的。
设定为1天1个版本。最大编号到10.就可以了。

用find删除七天前最近七天的文件

#!/bin/bash
before_day=`date --date=-13day +%Y.%m%d`
after_day=`date --date=-7day +%m%d`
dir_path=‘/data/testlog/‘
backup_path=‘/data/backup_logs/‘
for dir_name in `ls ${dir_path}`
do
    [ -d /data/backup_logs/${dir_name} ] || mkdir -p ${backup_path}${dir_name} 
    find ${dir_path}${dir_name} -type f -mtime +5 -mtime -14 | xargs tar -zcf ${dir_name}-${before_day}-${after_day}.tar.gz
    mv ${dir_name}-${before_day}-${after_day}.tar.gz ${backup_path}${dir_name}
done

以上是关于如何配置 Log4J 只保留最近七天的日志文件的主要内容,如果未能解决你的问题,请参考以下文章

对log4j产生的日志文件进行监控

如何让log4j日志只输出错误信息

如何将web应用项目中log4j的日志只打印到独立的文件,不打印在Tomcat的catalina.out?

如何将 log4j 每日日志轮换与基于文件大小的轮换和最大备份相结合?

如何使用 log4j2.xml 配置休眠日志记录?

log4j怎样控制只输出自己写的代码的日志,不输出框架中的日志