在 Debian 上调试 Tomcat,通常分为 日志排查、启动参数调试、远程调试、性能/线程分析 等几个层面。下面按常见场景给你一个实用指南。
Debian 上 Tomcat 常见有两种安装方式:
sudo apt install tomcat9
/etc/tomcat9//var/log/tomcat9/systemctl/opt/tomcat/bin/startup.sh / catalina.sh下面以 APT 安装的 Tomcat 9 为主说明,手动安装类似。
/var/log/tomcat9/catalina.out
/var/log/tomcat9/localhost.*.log
/var/log/tomcat9/manager.*.log
/var/log/tomcat9/host-manager.*.log
查看实时日志:
tail -f /var/log/tomcat9/catalina.out
Address already in use
ss -lntp | grep 8080
java -version
编辑服务文件:
sudo systemctl edit tomcat9
添加:
[Service]
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
重启:
sudo systemctl restart tomcat9
检查端口:
ss -lntp | grep 8000
export CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
./bin/catalina.sh run
⚠️ 注意:
suspend=y 可让 JVM 启动时等待调试器systemctl status tomcat9
journalctl -u tomcat9 -xe
sudo -u tomcat9 /usr/share/tomcat9/bin/catalina.sh run
如果是 Spring / Log4j / Logback:
application.propertieslogging.level.root=DEBUG
ls /var/lib/tomcat9/webapps
jps -l
jstack <pid>
jmap -heap <pid>
jstat -gc <pid>
| 问题 | 排查方式 |
|---|---|
| Tomcat 起不来 | catalina.out |
| 页面 404 | webapps 是否正确 |
| 端口冲突 | ss -lntp |
| Java 版本问题 | java -version |
| 应用无响应 | jstack |
| 内存溢出 | jmap |
catalina.outcatalina.sh run 启动jstack / jmap 查性能问题如果你愿意,可以告诉我:
我可以 直接帮你定位问题。