温馨提示×

Ubuntu Tomcat日志怎么分析

小樊
42
2026-07-10 10:05:09
栏目: 智能运维

在 Ubuntu 上分析 Tomcat 日志,通常可以从 日志位置、日志类型、常用分析命令、常见问题定位 四个方面入手。下面给你一套实用指南。


一、Tomcat 日志在哪里

默认情况下(以 apt 或官方 tar.gz 安装为例):

1️⃣ 日志目录

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

二、Tomcat 常见日志类型说明

日志文件 作用
catalina.out 启动日志、异常堆栈、System.out
catalina.*.log 按日期的 Tomcat 运行日志
localhost.*.log 应用级异常
access_log HTTP 访问日志(类似 Nginx)
manager / host-manager 管理后台日志

90% 问题看 catalina.out


三、基础日志分析命令(非常常用)

1️⃣ 实时查看日志

tail -f /var/log/tomcat9/catalina.out

2️⃣ 查看最近 100 行

tail -n 100 catalina.out

3️⃣ 搜索错误

grep -i error catalina.out
grep -i exception catalina.out

4️⃣ 查看某个时间段的日志

sed -n '/2026-01-21 10:00/,/2026-01-21 11:00/p' catalina.out

四、分析 Java 异常(重点)

1️⃣ 常见异常示例

java.lang.OutOfMemoryError
java.lang.NullPointerException
java.net.ConnectException

2️⃣ 查看异常完整堆栈

grep -A 30 "Exception" catalina.out

3️⃣ 定位是哪个项目出错

grep -R "项目名" /var/log/tomcat9/

五、访问日志分析(access_log)

1️⃣ 查看访问日志

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

2️⃣ 统计访问量

wc -l localhost_access_log.*.txt

3️⃣ 统计 500 错误

grep " 500 " localhost_access_log.*.txt

六、Tomcat 启动失败怎么看日志

1️⃣ 启动失败必看

journalctl -u tomcat9

或:

systemctl status tomcat9

2️⃣ 端口被占用

grep "Address already in use" catalina.out

3️⃣ Java 版本问题

java -version
grep "Unsupported major.minor" catalina.out

七、日志太大怎么办

1️⃣ 查看大小

du -h /var/log/tomcat9

2️⃣ 清空 catalina.out(不删文件)

> /var/log/tomcat9/catalina.out

3️⃣ 配置日志轮转(推荐)

sudo apt install logrotate

示例:

/var/log/tomcat9/catalina.out {
    daily
    rotate 7
    compress
    missingok
    copytruncate
}

八、Tomcat 日志分析实战思路

应用 404

  • access_log 看请求路径
  • localhost.log 看是否部署成功

应用 500

  • catalina.out 看异常堆栈

启动慢 / 卡死

  • catalina.out 看线程阻塞
  • 是否连接数据库超时

内存溢出

grep -i "OutOfMemory" catalina.out

九、进阶工具(可选)

  • lnav(日志分析神器)
sudo apt install lnav
lnav /var/log/tomcat9
  • ELK / Grafana + Loki(生产环境)

十、总结一句话

Ubuntu 上分析 Tomcat 日志,90% 情况只需要:

tail -f /var/log/tomcat9/catalina.out
grep -i exception catalina.out

如果你愿意,可以把 具体报错日志贴出来,我可以直接帮你定位问题 ✅

0