Tomcat catalina.out日志分割与定时任务指南

Tomcat 的 catalina.out 日志会持续记录系统输出,长期积累易占用大量磁盘空间,按日期分割日志是运维必备操作。本文详细讲解使用 logrotate 工具分割 catalina.out 的完整步骤,包括工具安装、配置编写、测试验证,搭配 cron 定时任务设置及补充命令,助力高效管理 Tomcat 日志,降低运维成本。
下面是一个简单的步骤:
1.安装 logrotate
确保你的系统上安装了 logrotate 工具。
你可以通过包管理器来安装,例如在 Ubuntu 上可以使用以下命令:
sudo apt-get install logrotate
2.配置 logrotate
创建一个 logrotate 的配置文件,告诉它如何处理 catalina.out 文件。
在 logrotate.d 目录下创建一个文件,比如 tomcat:
sudo nano /etc/logrotate.d/tomcat
在这个文件中添加如下内容:
/usr/local/setup/apache-tomcat-8.5.84-8081/logs/catalina.out {
daily
missingok
rotate 30
compress
delaycompress
notifempty
copytruncate
dateext
dateyesterday
dateformat -%Y-%m-%d
}
属性介绍:
daily:按天切割日志。missingok:如果日志文件不存在,则忽略它而不报错。rotate 7:保留 7 个旧的日志文件。compress:压缩旧的日志文件。delaycompress:延迟压缩,等到下一次日志轮换时压缩上一次轮换的文件。notifempty:如果日志文件为空,则不进行轮换。copytruncate:在轮换时,先复制原始日志文件内容到新文件,再清空原始日志文件内容。dateext:使得 logrotate 在轮换时使用日期作为后缀。dateyesterday:文件名设置为前一天的日期dateformat -%Y-%m-%d:指定日期的格式,例如-2026-04-14。
替换/usr/local/setup/apache-tomcat-8.5.84-8081/logs/catalina.out为你的catalina.out文件所在的路径。
3.测试 logrotate
保存配置文件并退出编辑器。然后,可以手动执行 logrotate 来测试配置是否生效:
logrotate -vf /etc/logrotate.d/tomcat
这将显示 logrotate 的详细输出,可以查看是否有任何错误或警告。
4.设置定时任务
logrotate 通常作为一个定时任务在系统中运行,定期检查并轮换日志文件。你可以查看系统中的 cron 任务,确认 logrotate 是否已经在其中配置,并根据需要进行调整。
通过这些步骤,你应该能够实现按日期分割 Tomcat 的 catalina.out 日志文件。
在 Linux 中,你可以使用 cron(定时任务)来定期执行特定的命令或脚本。Cron 是一个系统服务,它允许用户在预定的时间执行预定的命令。
如何设置定时任务的步骤
1.编辑 Cron 表
你可以使用 crontab -e 命令编辑当前用户的 cron 表。
crontab -e # 文件路径:/var/spool/cron/root
如果是第一次编辑,系统会要求你选择一个编辑器。
2.添加任务
在打开的文件中,每一行代表一个定时任务。每行的格式为:
minute hour day month day_of_week command
minute:分钟(0-59)hour:小时(0-23)day:日期(1-31)month:月份(1-12)day_of_week:星期几(0-7,0 和 7 都代表星期日)command:要执行的命令或脚本
例如,要每天凌晨 3 点执行一个脚本,你可以添加以下行:
5 0 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat
这表示在每天的 0:05 执行//usr/sbin/logrotate -vf /etc/logrotate.d/tomcat脚本。
3.保存并退出
保存文件并退出编辑器。
4.验证任务
你可以使用 crontab -l 命令来查看当前用户的 cron 表,确保任务已经正确添加。
5.重启 cron 服务
(可选):在某些情况下,修改 cron 表后可能需要重启 cron 服务以使更改生效。
你可以使用以下命令来重启 cron 服务:
# 重启 service cron restart # 查看状态 service cron status # 停止 service cron stop # 开始 service cron start
补充
常用命令记录
# 文件切割 split -b 2000M --additional-suffix=.txt jstsjtq.log smallfile_ # 文件压缩 gzip 文件名
总结
以上就是 Tomcat catalina.out 日志按日期分割的全流程,涵盖 logrotate 工具配置、测试验证,以及 cron 定时任务的设置方法,补充了日志分割、压缩的常用命令。按照指南操作,可实现日志的自动化管理,避免日志过大占用资源,保障 Tomcat 服务稳定运行,提升运维效率。
以上关于Tomcat catalina.out日志分割与定时任务指南的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » Tomcat catalina.out日志分割与定时任务指南
微信
支付宝