在 Debian 上监控 Tomcat,可以从系统层面、Tomcat 自身、日志、可视化工具几个维度来做。下面按实用程度从简到繁说明。
ps -ef | grep tomcat
或
systemctl status tomcat
(服务名可能是 tomcat9、tomcat10)
ss -lntp | grep java
netstat -an | grep 8080
top -p $(pgrep -f tomcat)
htop
关注:
编辑:
/etc/tomcat9/tomcat-users.xml
添加:
<role rolename="manager-gui"/>
<user username="admin" password="密码" roles="manager-gui"/>
访问:
http://服务器IP:8080/manager/status
可看:
修改:
/etc/default/tomcat9
或 setenv.sh:
JAVA_OPTS="$JAVA_OPTS \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9999 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false"
用工具连接:
查看:
/var/log/tomcat9/
├── catalina.out
├── localhost.log
└── host-manager.log
tail -f /var/log/tomcat9/catalina.out
grep -i "exception" /var/log/tomcat9/catalina.out
组件:
流程:
适合:
| 指标 | 说明 |
|---|---|
| JVM Heap | 是否频繁 Full GC |
| Thread 数 | 是否线程耗尽 |
| 请求响应时间 | 是否变慢 |
| 错误 5xx | 是否有异常 |
| CPU / 内存 | 是否资源瓶颈 |
manager + tail 日志JMX + Prometheus + GrafanaZabbix如果你愿意,我可以:
直接告诉我你的使用场景即可。