温馨提示×

ubuntu tomcat日志怎么解析

小樊
41
2026-09-12 11:46:38
栏目: 智能运维

在 Ubuntu 上解析 Tomcat 日志,一般分三步:找到日志位置 → 了解日志类型 → 用工具/命令解析。下面按实战方式说明。


一、Tomcat 日志在哪里(Ubuntu)

默认安装(apt 或 tar 包)位置可能不同:

1. apt 安装(常见)

/var/log/tomcat9/

(版本可能是 tomcat8 / tomcat9 / tomcat10)

2. 官方 tar 包安装

$TOMCAT_HOME/logs/

例如:

/opt/tomcat/logs/

二、Tomcat 常见日志文件

文件 说明
catalina.out 最核心日志(标准输出 + 错误)
catalina.yyyy-mm-dd.log 每日 catalina 日志
localhost.yyyy-mm-dd.log 应用级异常
localhost_access_log.yyyy-mm-dd.txt 访问日志(类似 Nginx)
manager / host-manager 管理端日志

三、基础解析命令(最常用)

1. 实时查看日志

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

2. 查看错误

grep -i error /var/log/tomcat9/catalina.out

3. 查看异常堆栈

grep -A 20 Exception /var/log/tomcat9/catalina.out

4. 按时间过滤

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

四、解析访问日志(access log)

示例格式:

127.0.0.1 - - [21/Jan/2026:10:12:33 +0800] "GET /api/test HTTP/1.1" 200 1234

统计访问最多的 IP

awk '{print $1}' localhost_access_log.*.txt | sort | uniq -c | sort -nr

统计 500 错误

grep ' 500 ' localhost_access_log.*.txt

五、结构化解析(推荐)

1. 使用 journalctl(apt 安装)

journalctl -u tomcat9
journalctl -u tomcat9 --since "2026-01-21 10:00"

2. 用 logrotate(Ubuntu 默认)

日志会自动切割:

/etc/logrotate.d/tomcat9

六、进阶:日志分析工具

1. GoAccess(访问日志可视化)

goaccess localhost_access_log.*.txt -o report.html

2. ELK / Loki

  • Filebeat 收集 catalina.out
  • Logstash / Promtail 解析
  • Kibana / Grafana 查询

七、Java 应用日志(logback / log4j)

如果应用自己写日志(不在 catalina.out):

/var/log/tomcat9/myapp/

常见文件:

app.log
app-error.log

八、常见排错思路

✅ Tomcat 起不来
→ 看 catalina.out 最底部

✅ 404 / 500
localhost.yyyy-mm-dd.log

✅ 慢请求
→ access log 看响应时间


如果你愿意,可以:

  • 贴一段 Tomcat 日志
  • 或说明你是 排查错误 / 做统计 / 接监控系统

我可以直接帮你写 解析命令或脚本

0