Debian系统下的Tomcat日志文件过大可能会占用大量磁盘空间,影响系统性能。以下是几种解决Tomcat日志文件过大的方法:
安装cronolog:
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
tar zxvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure --prefix=/usr/local/cronolog
make
make install
ln -s /usr/local/cronolog/sbin/* /usr/local/sbin/
修改Tomcat启动脚本:
编辑/path/to/tomcat/bin/catalina.sh
,在以下几行进行如下修改:
# 注释掉下面这行
# touch "/path/to/tomcat/logs/catalina.out"
# 修改下面这行
org.apache.catalina.startup.Bootstrap "@" start "/usr/local/sbin/cronolog \"/path/to/tomcat/logs/catalina.%Y-%m-%d.out\" /dev/null &"
重启Tomcat: 执行以下命令重启Tomcat,使配置生效:
/path/to/tomcat/bin/startup.sh
/path/to/tomcat/bin/shutdown.sh
安装logrotate(如果尚未安装):
sudo apt-get install logrotate
创建或编辑logrotate配置文件:
在/etc/logrotate.d/
目录下创建或编辑tomcat
配置文件:
sudo vim /etc/logrotate.d/tomcat
内容如下:
/path/to/tomcat/logs/catalina.out {
copytruncate
daily
rotate 7
missingok
compress
size 16M
}
测试logrotate配置: 执行以下命令测试配置是否正确:
logrotate -d /etc/logrotate.conf # -d 表示测试模式
手动执行logrotate: 如果需要立即执行日志轮转:
logrotate -f /etc/logrotate.conf # -f 表示强制模式
编辑logging.properties
文件:
找到/path/to/tomcat/conf/logging.properties
文件,修改以下配置:
org.apache.juli.FileHandler.level = WARNING
org.apache.juli.FileHandler.directory = /path/to/tomcat/logs
org.apache.juli.FileHandler.prefix = catalina
重启Tomcat: 使配置生效:
/path/to/tomcat/bin/startup.sh
/path/to/tomcat/bin/shutdown.sh
clean_tomcat_logs.sh
,内容如下:#!/bin/bash
LOG_DIR="/path/to/tomcat/logs"
find "$LOG_DIR" -mtime +7 -name "*.log" -exec rm -f {} \;
find "$LOG_DIR" -mtime +7 -name "*.txt" -exec rm -f {} \;
赋予脚本执行权限:chmod +x /path/to/tomcat/logs/clean_tomcat_logs.sh
使用crontab
定时执行脚本:crontab -e
添加以下行以每天凌晨执行清理任务:0 0 * * * /path/to/tomcat/logs/clean_tomcat_logs.sh
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
相关推荐:Debian Tomcat日志过大怎么办