ubuntu

Ubuntu下如何清理Tomcat旧日志

小樊
43
2025-10-09 11:36:46
栏目: 智能运维

Ubuntu下清理Tomcat旧日志的常用方法

1. 手动清理(一次性操作)

步骤

注意:手动清理适用于临时解决日志满的问题,需定期执行或配合自动化工具使用。

2. 使用Logrotate自动轮转(推荐)

Logrotate是Linux系统自带的日志管理工具,可自动完成日志的切割、压缩、删除,无需手动干预。
配置步骤

Logrotate会自动添加到系统定时任务(/etc/cron.daily/logrotate),无需额外设置。

3. 编写Shell脚本自动化清理

若需要更灵活的清理逻辑(如清理特定模式的日志),可编写脚本并通过cron定时执行。
脚本示例/opt/tomcat/scripts/clean_tomcat_logs.sh):

#!/bin/bash
# 定义Tomcat日志路径
LOG_PATH="/var/log/tomcat"
# 删除7天前的.log文件
find "$LOG_PATH" -type f -name "*.log" -mtime +7 -exec rm -rf {} \;
# 清空catalina.out
> "$LOG_PATH/catalina.out"

设置权限

sudo chmod +x /opt/tomcat/scripts/clean_tomcat_logs.sh

添加定时任务(每天凌晨0点执行):

sudo crontab -e

添加以下内容:

0 0 * * * /opt/tomcat/scripts/clean_tomcat_logs.sh

说明:脚本需赋予执行权限,cron会自动调用脚本完成任务。

4. 调整Tomcat日志配置(从源头减少日志量)

通过修改Tomcat的日志配置,可降低日志生成速率,减少旧日志的积累。

注意:调整日志级别需权衡“调试便利性”与“日志体积”,建议生产环境保留WARNING及以上级别。

以上方法可根据实际需求组合使用,推荐优先配置Logrotate(自动化程度高),再配合脚本或配置调整优化日志管理。

0
看了该问题的人还看了