在 Ubuntu 上过滤 Tomcat 日志,常见做法取决于你使用的是 Tomcat 自带日志、Log4j / Logback,还是 systemd/journald。下面按常见场景给你一个完整说明。
Ubuntu 下 Tomcat 日志一般在:
/var/log/tomcat9/ # Tomcat 9
/var/log/tomcat8/
常见日志文件:
| 文件 | 说明 |
|---|---|
catalina.out |
主日志(最常用) |
localhost.log |
应用相关 |
manager.log |
manager 应用 |
host-manager.log |
host-manager |
tail -f /var/log/tomcat9/catalina.out
grep "ERROR" /var/log/tomcat9/catalina.out
grep -i "error" /var/log/tomcat9/catalina.out
grep -E "ERROR|Exception|Failed" /var/log/tomcat9/catalina.out
grep "2024-01-01" /var/log/tomcat9/catalina.out
grep "2024-01-01 10:" /var/log/tomcat9/catalina.out
tail -f /var/log/tomcat9/catalina.out | grep "ERROR"
grep -A 20 "Exception" /var/log/tomcat9/catalina.out
-A 20:显示匹配行后 20 行
如果日志格式类似:
INFO org.xxx
WARN org.xxx
ERROR org.xxx
可以这样:
grep "ERROR" /var/log/tomcat9/catalina.out
或:
grep -E "ERROR|WARN" /var/log/tomcat9/catalina.out
如果 Tomcat 是 systemd 管理:
systemctl status tomcat9
journalctl -u tomcat9
journalctl -u tomcat9 -f
journalctl -u tomcat9 --since "2024-01-01 10:00" --until "2024-01-01 12:00"
Tomcat 使用 logging.properties:
/etc/tomcat9/logging.properties
org.apache.catalina.level = WARNING
如果你用的是 Log4j2 / Logback,过滤在配置文件中完成:
<logger name="com.xxx" level="ERROR"/>
✅ 实时查看 ERROR 日志:
tail -f /var/log/tomcat9/catalina.out | grep "ERROR"
✅ 查看最近 500 行并过滤异常:
tail -n 500 /var/log/tomcat9/catalina.out | grep -A 10 "Exception"
✅ 统计 ERROR 数量:
grep -c "ERROR" /var/log/tomcat9/catalina.out
你可以告诉我:
我可以给你 更精确的过滤命令或配置。