以下是优化Ubuntu Tomcat日志记录的方法:
conf/logging.properties
中,将日志级别设为WARNING
、ERROR
或FATAL
,减少不必要的日志输出。org.apache.catalina.level = WARNING
conf/logging.properties
中,将ConsoleHandler
替换为AsyncFileHandler
,提升日志处理性能。handlers = 1catalina.org.apache.juli.AsyncFileHandler, ...
logrotate
工具管理日志,设置轮转周期、保留天数及压缩选项,避免日志文件过大。# /etc/logrotate.d/tomcat 示例配置
/usr/local/tomcat/logs/catalina.out {
daily
rotate 7
compress
missingok
notifempty
copytruncate
}
conf/logging.properties
中,为特定包(如org.apache.catalina.startup
)设置更高日志级别,减少冗余日志。conf/server.xml
中配置AccessLogValve
,启用轮转并设置保留天数。<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
prefix="localhost_access_log"
suffix=".txt"
rotatable="true"
maxDays="30"
pattern="%h %l %u %t "%r" %s %b" />
cron
定时任务删除超过保留期限的日志文件。# 示例脚本:删除7天前的日志
find /usr/local/tomcat/logs -mtime +7 -name "*.log" -exec rm -rf {} \;
注意:修改配置前需备份文件,建议在测试环境验证后再应用到生产环境。