tomcat日志轮转🍪
tomcat日志轮转🍩🍪
logrotate 是一个用于管理和轮转日志文件的工具,通常在类 Unix 系统中使用。它可以帮助系统管理员自动化日志文件的管理,防止日志文件占用过多的磁盘空间。以下是关于 logrotate 服务的详细介绍,包括其工作原理、配置方法和常见用法。
工作原理
logrotate 的主要功能是定期轮转、压缩、删除和邮件发送日志文件。它通过读取配置文件来确定哪些日志文件需要轮转以及如何轮转。logrotate 通常在系统的 cron 作业中定期运行,通常是每天或每周。
配置文件
logrotate 的配置文件通常位于 /etc/logrotate.conf,并且可以在 /etc/logrotate.d/ 目录中为特定应用程序创建单独的配置文件。
一、为tomcat配置logrorate轮转
① 匹配/opt/目录下所有以tomcat7-开头或tomcat8-*开头的目录
[root@localhost ~]# vim /etc/logrorate.d/tomcat7
/opt/tomcat7-*/logs/catalina.out {
su root root
daily
rotate 15
missingok
dateext
compress
notifempty
copytruncate
size 20M
}
这个配置将会对每个匹配的catalina.out日志文件执行以下操作:
su root root:在执行日志轮换时,切换到root用户。daily:每天执行日志轮换。rotate 15:保留最近的15个日志文件。missingok:如果日志文件在轮换时不存在,不报错。dateext:使用日期扩展来命名日志文件,例如catalina.out-2023-04-01.log.gz。compress:轮换后的日志文件将被压缩。notifempty:如果日志文件为空,不执行轮换。copytruncate:在日志轮换时,复制日志文件然后截断原始文件,而不是移动文件。size 20M:当日志文件达到20MB时执行轮换。
② 单独匹配某个目录
[root@localhost ~]# vim /etc/logrotate.d/tomcat
/opt/tomcat7-2/logs/catalina.out {
su root root (如有权限问题,添加此条)
daily
rotate 15
missingok
dateext
compress
notifempty
copytruncate
size 20M
}
手动截断日志
[root@localhost ~]# logrotate --force /etc/logrotate.d/tomcat
二、业务日志清理(配合crontab):
/opt/tomcat7-1/logs
/opt/tomcat7-2/logs
直接匹配 tomcat7-* 或 tomcat8-* 目录
[root@localhost ~]# crontab -e
0 2 * * * find /opt/tomcat7-*/logs -type f -mtime +7 -exec rm -rf {} \;
0 2 * * * find /opt/tomcat8-*/logs -type f -mtime +7 -exec rm -rf {} \;
不针对访问日志:
[root@localhost ~]# crontab -e
0 2 * * * find /opt/tomcat7-1/logs -type f -mtime +7 -exec rm -rf {} \;
0 2 * * * find /opt/tomcat7-2/logs -type f -mtime +7 -exec rm -rf {} \;
针对访问日志:
[root@localhost ~]# crontab -e
0 2 * * * find /opt/tomcat7-1/logs -name 'localhost_access_log.202*' -type f -mtime +7 -exec rm -rf {} \;
0 2 * * * find /opt/tomcat7-1/logs -name 'localhost.202*' -type f -mtime +7 -exec rm -rf {} \;
0 2 * * * find /opt/tomcat7-2/logs -name 'localhost_access_log.202*' -type f -mtime +7 -exec rm -rf {} \;
0 2 * * * find /opt/tomcat7-2/logs -name 'localhost.202*' -type f -mtime +7 -exec rm -rf {} \;

浙公网安备 33010602011771号