Linux下如何定时切割Tomcat日志并删除指定天数前的日志记录
Linux下如何定时切割Tomcat日志并删除指定天数前的日志记录?下面介绍一种方法:
1.安装logrotate:logrotate是一个日志文件切割工具,可以定期切割日志文件,节省磁盘空间。在Linux系统中,可以使用如下命令安装logrotate:
yum install logrotate
2.编辑配置文件:在/etc/logrotate.d/目录下新建一个tomcat日志配置文件,如tomcat.conf,编辑内容如下:
/opt/tomcat/logs/*.log { daily rotate 5 compress missingok notifempty create 640 tomcat adm sharedscripts postrotate /opt/tomcat/bin/shutdown.sh /opt/tomcat/bin/startup.sh endscript }
以上配置文件的意思是:每天切割日志,保留最近5份日志,压缩日志,如果没有日志文件也不报错,切割后的日志文件权限为640,拥有者为tomcat,用户组为adm,切割后重启Tomcat。
3.定时任务:在crontab中添加定时任务,每天凌晨2点执行logrotate,命令如下:
0 2 * * * /usr/sbin/logrotate /etc/logrotate.d/tomcat.conf
4.删除指定天数前的日志记录:可以使用find命令,比如删除7天前的日志文件,可以使用如下命令:
find /opt/tomcat/logs/ -mtime +7 -name "*.log" -exec rm -f {} \;
以上就是Linux下如何定时切割Tomcat日志并删除指定天数前的日志记录的方法,希望能够帮助到大家。
相关文章