在 Ubuntu 上设置 Tomcat 日志,主要涉及 日志级别、日志路径、日志格式 等配置。下面按 最常见场景 给你一个完整说明(以 Tomcat 8/9/10 为例,Ubuntu 20.04/22.04 通用)。
Ubuntu 下 Tomcat 的日志通常在:
/var/log/tomcat9/
常见日志文件:
| 文件 | 说明 |
|---|---|
catalina.out |
主日志(标准输出 + 错误) |
catalina.2026-01-21.log |
按日期的 catalina 日志 |
localhost.log |
应用相关日志 |
manager.log |
manager 应用日志 |
host-manager.log |
host-manager 日志 |
路径:
/etc/tomcat9/logging.properties
或(如果是手动安装):
$TOMCAT_HOME/conf/logging.properties
SEVERE > WARNING > INFO > CONFIG > FINE > FINER > FINEST
.level = INFO
org.apache.catalina.level = FINE
org.apache.level = WARNING
默认日志目录由 CATALINA_BASE 决定。
export CATALINA_OUT=/data/logs/tomcat/catalina.out
编辑 Tomcat 启动配置:
sudo nano /etc/default/tomcat9
添加或修改:
CATALINA_OUT="/data/logs/tomcat/catalina.out"
然后:
sudo mkdir -p /data/logs/tomcat
sudo chown tomcat:tomcat /data/logs/tomcat
Ubuntu 下 catalina.out 默认不会自动切割,容易撑满磁盘。
创建配置:
sudo nano /etc/logrotate.d/tomcat9
示例内容:
/var/log/tomcat9/catalina.out {
daily
rotate 7
missingok
notifempty
compress
copytruncate
su tomcat tomcat
}
测试:
sudo logrotate -d /etc/logrotate.d/tomcat9
编辑:
/etc/tomcat9/server.xml
在 <Host> 中添加:
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
prefix="access."
suffix=".log"
pattern="%h %l %u %t "%r" %s %b %D" />
说明:
| 参数 | 含义 |
|---|---|
%h |
客户端 IP |
%t |
时间 |
%r |
请求 |
%s |
HTTP 状态码 |
%b |
响应大小 |
%D |
请求耗时(毫秒) |
sudo systemctl restart tomcat9
查看状态:
sudo systemctl status tomcat9
/etc/default/tomcat9.level = WARNING
org.apache.catalina.level = INFO
java.util.logging.ConsoleHandler.level = WARNING
如果你愿意,可以告诉我:
我可以给你 完全定制化的配置方案。