一、Centos7截断并定期清理tomcat日志:

1、在/etc/logrotate.d/目录下生成截断tomcat日志的配置文件,名称为tomcat

touch tomcat

vi /etc/logrotate.d/tomcat 

2、 tomcat脚本添加如下内容

/opt/apache-tomcat-7.0.57/logs/catalina.out{
rotate 3
compress
copytruncate
daily
dateext
missingok
size 16M
}

3、 强制截断

/usr/sbin/logrotate -f /etc/logrotate.conf

4、在/usr/local/下增加deltomcatlog.sh文件并赋权

touch deltomcatlog.sh

vi /usr/local/deltomcatlog.sh
chmod 777 /usr/local/deltomcatlog.sh

5、deltomcatlog.sh脚本添加如下内容

find /opt/apache-tomcat-7.0.57/bin/C\:/log/ -name info-* | xargs rm -f
find /opt/apache-tomcat-7.0.57/bin/C\:/log/ -name error-* | xargs rm -f
find /opt/apache-tomcat-7.0.57/bin/C\:/log/ -name DYBigScreen.log.* |xargs rm -f
find /opt/apache-tomcat-7.0.57/logs/ -name catalina*.gz |xargs rm -f

6、编辑crontab文件

vi /etc/crontab

7、添加如下内容,每天2点截断日志、3点删除日志

0 2 * * * root /usr/sbin/logrotate -f /etc/logrotate.conf
0 3 * * * root /usr/local/deltomcatlog.sh

8、加载任务

crontab /etc/crontab

9、 查看任务

crontab -l

二、Centos7截断并定期清理tomcat日志:
第一步:把下面语句写入/etc/logrotate.d/tomcat中
/opt/apache-tomcat-8.5.27/logs/catalina.out {
rotate 7
compress
copytruncate
daily
dateext
missingok
size 1024
}
第二步:执行语句:logrotate /etc/logrotate.conf
第三步:自动执行 crontab -e

0 0 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat > /dev/null 2>&1
Last modification:June 17, 2020
如果觉得我的文章对你有用,请随意赞赏