在Linux系统上,Tomcat的catalina.out日志文件可以通过配置logrotate来自动分割,以防止文件过大。以下是一个基本的logrotate配置示例:
- 创建一个新的logrotate配置文件,例如
/etc/logrotate.d/tomcat:
nano /etc/logrotate.d/tomcat- 添加以下内容到文件中:
/path/to/tomcat/logs/catalina.out {
copytruncate
daily
rotate 7
compress
missingok
create 640 tomcat tomcat
}解释:
copytruncate: 在复制和截断原始文件后进行轮替,这样Tomcat进程就可以继续写入catalina.out,无需重启。daily: 指定日志文件每天轮替一次。rotate 7: 保留7天内的日志文件。compress: 通过gzip压缩轮替后的日志文件。missingok: 如果日志文件不存在,则不执行轮替。/path/to/tomcat/logs/catalina.out: 替换为你的Tomcat日志文件的实际路径。create 640 tomcat tomcat: 创建新日志文件,设置权限和所有者。
- 保存文件并退出编辑器。
- 测试logrotate配置是否正确:
logrotate /etc/logrotate.d/tomcat --verbose- 确保logrotate定时任务正在运行:
sudo systemctl status logrotate.service如果服务未运行,使用以下命令启动:
sudo systemctl start logrotate.service以上步骤将设置logrotate,以便每天自动轮替和压缩Tomcat的catalina.out日志文件,并且保留7天内的历史记录。