抓取(收集、获取)Tomcat 异常日志,通常可以从日志文件、控制台输出、远程日志、监控工具几个层面来做。下面按常见场景给你一套实用方案。
Tomcat 的异常栈通常在这里:
tail -f /path/to/tomcat/logs/catalina.out
常见异常:
ExceptionERRORCaused bygrep -i "exception" catalina.out
grep -A 20 "NullPointerException" catalina.out
logs/localhost.yyyy-mm-dd.log
logs/localhost_access_log.yyyy-mm-dd.txt
如果你的项目用了日志框架:
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>logs/app-error.log</file>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
只抓异常:
log.error("系统异常", e);
./startup.sh >> logs/catalina.out 2>&1
tail -f catalina.out | grep -A 30 "Exception" >> error.log
Tomcat:type=Server工具:
流程:
Tomcat日志 → Filebeat → Elasticsearch → Kibana
kubectl logs tomcat-pod -f
kubectl logs tomcat-pod | grep Exception
| 异常 | 可能原因 |
|---|---|
| OutOfMemoryError | 内存不足 |
| ClassNotFoundException | 包缺失 |
| NullPointerException | 代码 bug |
| 404 / 500 | 配置或路由问题 |
如果你能告诉我:
我可以直接给你可复制的配置或脚本。