在Ubuntu系统中,可通过配置logrotate
工具实现Tomcat日志轮转,步骤如下:
安装logrotate(若未安装):
sudo apt update
sudo apt install logrotate
创建配置文件:
在/etc/logrotate.d/
目录下创建tomcat
文件(如/etc/logrotate.d/tomcat9
):
sudo nano /etc/logrotate.d/tomcat9
添加配置内容:
以Tomcat的catalina.out
日志为例,配置示例如下:
/var/log/tomcat9/*.log {
daily # 每天轮转
rotate 7 # 保留7个轮转文件
compress # 压缩旧日志
missingok # 文件丢失时不报错
notifempty # 空文件不轮转
copytruncate # 截断原日志,避免Tomcat锁定
postrotate # 轮转后重启Tomcat日志(可选)
if [ -f /var/run/tomcat9.pid ]; then
kill -USR1 `cat /var/run/tomcat9.pid`
fi
endscript
}
dateext
参数:/var/log/tomcat9/*.log {
daily
dateext # 使用日期作为后缀(如catalina.out-20250901)
rotate 7
compress
...
}
测试配置:
手动执行轮转,检查是否有错误:
sudo logrotate -f /etc/logrotate.d/tomcat9 # 强制轮转
sudo logrotate -d /etc/logrotate.d/tomcat9 # 调试模式(不实际执行)
自动执行:
logrotate
默认通过系统cron每日运行,无需额外配置。如需修改频率,可编辑/etc/cron.daily/logrotate
文件。
说明:
/usr/local/tomcat/logs/
)。