Debian 上 Tomcat 日志管理实践
一 日志位置与常见类型
二 查看与实时分析
三 日志轮转方案
/var/log/tomcat9/catalina.out {
daily
rotate 7
compress
missingok
notifempty
copytruncate
create 640 tomcat adm
}
/var/log/tomcat9/*.log {
daily
rotate 30
compress
missingok
notifempty
sharedscripts
postrotate
if [ -f /var/run/tomcat9.pid ]; then
/bin/kill -USR1 $(cat /var/run/tomcat9.pid)
fi
endscript
}
四 日志级别与访问日志配置
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = DEBUG
java.util.logging.ConsoleHandler.level = WARNING
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
prefix="access_log"
suffix=".txt"
pattern="%h %l %u %t "%r" %s %b"
resolveHosts="false"/>
五 备份归档与集中化
#!/usr/bin/env bash
LOG_PATH="/var/log/tomcat9"
BACKUP_PATH="/opt/backups/tomcat"
DATE=$(date +%F)
mkdir -p "$BACKUP_PATH"
tar czf "$BACKUP_PATH/tomcat_logs_$DATE.tar.gz" -C "$LOG_PATH" .
find "$LOG_PATH" -name "*.gz" -mtime +30 -delete