在 Ubuntu 上配置 Tomcat 日志,主要涉及 logging.properties、log4j / logback 以及 systemd / catalina.out。下面按常见场景一步步说明。
Tomcat 默认有几种日志:
| 日志 | 说明 |
|---|---|
| catalina.out | 标准输出/错误,启动信息 |
| catalina.yyyy-mm-dd.log | 运行日志 |
| localhost.*.log | 应用级日志 |
| manager/ host-manager | 管理日志 |
日志配置文件:
/etc/tomcat9/logging.properties
或
$TOMCAT_HOME/conf/logging.properties
Ubuntu 通过 apt 安装时:
/etc/tomcat9/logging.properties
源码安装时:
$TOMCAT_HOME/conf/logging.properties
handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
✅ 可修改:
SEVERE / WARNING / INFO / FINE/var/log/tomcat9/catalina.out
创建配置:
sudo vim /etc/logrotate.d/tomcat9
内容示例:
/var/log/tomcat9/catalina.out {
daily
rotate 7
compress
missingok
notifempty
copytruncate
}
测试:
sudo logrotate -d /etc/logrotate.d/tomcat9
修改 systemd:
sudo systemctl edit tomcat9
添加:
[Service]
StandardOutput=null
StandardError=journal
logback-spring.xml 示例:
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/var/log/tomcat9/app.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>/var/log/tomcat9/app.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>7</maxHistory>
</rollingPolicy>
</appender>
<root level="INFO">
<appender-ref ref="FILE"/>
</root>
</configuration>
.level = FINE
org.apache.catalina.level = FINE
sudo systemctl restart tomcat9
查看日志:
tail -f /var/log/tomcat9/catalina.out
logrotate 管理 catalina.outlogbackINFO如果你愿意,可以告诉我:
我可以给你 完全贴合你环境的配置示例。