debian

Debian Tomcat日志清理技巧

小樊
39
2025-08-31 16:53:22
栏目: 智能运维

以下是Debian Tomcat日志清理的常用技巧:

一、手动清理

使用find命令删除指定天数前的日志文件,例如删除30天前的.log.txt文件:

find /path/to/tomcat/logs/ -type f -mtime +30 -name "*.log" -exec rm -rf {} \;
find /path/to/tomcat/logs/ -type f -mtime +30 -name "*.txt" -exec rm -rf {} \;

注意:需将/path/to/tomcat/logs/替换为实际日志路径。

二、使用脚本自动化清理

  1. 创建清理脚本(如/usr/local/bin/clear_tomcat_logs.sh):
#!/bin/bash
LOG_PATH="/path/to/tomcat/logs"
find "$LOG_PATH" -type f -mtime +30 -name "catalina.*.log" -exec rm -rf {} \;
find "$LOG_PATH" -type f -mtime +30 -name "localhost.*.log" -exec rm -rf {} \;
echo "" > "$LOG_PATH/catalina.out"  # 清空catalina.out
  1. 赋予脚本执行权限:
chmod +x /usr/local/bin/clear_tomcat_logs.sh
  1. 通过crontab -e设置定时任务(如每天凌晨1点执行):
0 1 * * * /usr/local/bin/clear_tomcat_logs.sh

三、利用logrotate工具(推荐)

  1. 安装logrotate:
sudo apt-get install logrotate
  1. 创建配置文件/etc/logrotate.d/tomcat
/usr/local/tomcat/logs/catalina.out {
    daily
    rotate 7
    compress
    missingok
    notifempty
    copytruncate  # 避免重启Tomcat
}

参数说明

四、修改Tomcat配置(可选)

conf/logging.properties中调整日志级别或输出格式,减少日志量:

1catalina.org.apache.juli.FileHandler.level = INFO  # 降低日志级别
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

五、注意事项

0
看了该问题的人还看了