在CentOS中管理Tomcat日志可以通过以下几个步骤进行:
CATALINA_HOME/logs
目录下。tail -f
命令实时查看日志文件,例如查看catalina.out
日志。cd $CATALINA_HOME/logs
tail -f catalina.out
使用Ctrl+C
停止实时查看。logrotate
进行日志轮转,以便管理日志文件的大小和数量。logrotate
的配置文件通常位于/etc/logrotate.d/tomcat
。你可以编辑这个文件来设置日志轮转规则,例如每天轮转日志文件、保留最近7天的日志文件等。/var/log/tomcat/catalina.out {
daily rotate 7
compress
missingok
notifempty
create 0644 root root
dateext
}
使用以下命令手动触发日志轮转:logrotate -f /etc/logrotate.d/tomcat
tomcatLog.sh
来自动切割catalina.out
日志文件。#!/bin/bash
DIR="/path/to/tomcat/logs"
LOGS="$DIR/catalina.out"
DATE=$(date +%Y-%m-%d)
BACKUP_FILE="$DIR/catalina.$DATE.bak"
ARCHIVE_FILE="$DIR/catalina.$DATE.tar.gz"
if [ -d "$DIR" ]; then
cd "$DIR"
cp "$LOGS" "$BACKUP_FILE"
tar -czf "$ARCHIVE_FILE" "$BACKUP_FILE"
rm -f "$BACKUP_FILE"
cat "$LOGS" > "$LOGS"
rm -f "$LOGS"
else
echo "Directory does not exist: $DIR"
fi
设置脚本执行权限并添加定时任务:chmod +x $DIR/tomcatLog.sh
crontab -e
# 添加如下行,每两天执行一次
*/2 * * * * $DIR/tomcatLog.sh
catalina.sh
和logging.properties
文件:可以通过修改catalina.sh
和logging.properties
文件来减少日志输出。编辑conf/logging.properties
文件,设置日志级别为WARNING
或OFF
以减少日志输出。handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina
rsyslog
和logrotate
将Tomcat日志写入/var/log/tomcat/
目录,并配置rsyslog
将日志发送到远程Syslog服务器。通过以上方法,你可以有效地管理CentOS上Tomcat的日志,确保日志文件的可读性和可管理性。