在 Ubuntu 上分析 Tomcat 日志,通常可以从 日志位置、日志类型、常用分析命令、常见问题定位 四个方面入手。下面给你一套实用指南。
默认情况下(以 apt 或官方 tar.gz 安装为例):
cd /var/log/tomcat9
# 或
cd $CATALINA_HOME/logs
常见日志文件:
catalina.out # 最主要,标准输出和错误
catalina.2026-01-21.log
localhost.2026-01-21.log
manager.2026-01-21.log
host-manager.2026-01-21.log
localhost_access_log.2026-01-21.txt
| 日志文件 | 作用 |
|---|---|
| catalina.out | 启动日志、异常堆栈、System.out |
| catalina.*.log | 按日期的 Tomcat 运行日志 |
| localhost.*.log | 应用级异常 |
| access_log | HTTP 访问日志(类似 Nginx) |
| manager / host-manager | 管理后台日志 |
✅ 90% 问题看 catalina.out
tail -f /var/log/tomcat9/catalina.out
tail -n 100 catalina.out
grep -i error catalina.out
grep -i exception catalina.out
sed -n '/2026-01-21 10:00/,/2026-01-21 11:00/p' catalina.out
java.lang.OutOfMemoryError
java.lang.NullPointerException
java.net.ConnectException
grep -A 30 "Exception" catalina.out
grep -R "项目名" /var/log/tomcat9/
cat localhost_access_log.2026-01-21.txt
格式示例:
127.0.0.1 - - [21/Jan/2026:10:01:02 +0800] "GET /api/test HTTP/1.1" 500 1024
wc -l localhost_access_log.*.txt
grep " 500 " localhost_access_log.*.txt
journalctl -u tomcat9
或:
systemctl status tomcat9
grep "Address already in use" catalina.out
java -version
grep "Unsupported major.minor" catalina.out
du -h /var/log/tomcat9
> /var/log/tomcat9/catalina.out
sudo apt install logrotate
示例:
/var/log/tomcat9/catalina.out {
daily
rotate 7
compress
missingok
copytruncate
}
✅ 应用 404
✅ 应用 500
✅ 启动慢 / 卡死
✅ 内存溢出
grep -i "OutOfMemory" catalina.out
lnav(日志分析神器)sudo apt install lnav
lnav /var/log/tomcat9
Ubuntu 上分析 Tomcat 日志,90% 情况只需要:
tail -f /var/log/tomcat9/catalina.out
grep -i exception catalina.out
如果你愿意,可以把 具体报错日志贴出来,我可以直接帮你定位问题 ✅