在 Debian 上运行 Tomcat 时,日志是排查问题、监控运行状态的重要手段。下面从日志位置、日志类型、常见内容解读、实用命令几个方面系统说明。
以 apt 安装的 Tomcat(如 tomcat9 / tomcat10)为例:
/var/log/tomcat9/
常见文件:
catalina.out ✅(最重要)catalina.YYYY-MM-DD.loglocalhost.YYYY-MM-DD.loglocalhost_access_log.YYYY-MM-DD.txtmanager.loghost-manager.log如果是手动解压安装的 Tomcat:
$TOMCAT_HOME/logs/
catalina.out(最常用)tail -f /var/log/tomcat9/catalina.out
catalina.YYYY-MM-DD.logcatalina.out 更规整localhost.YYYY-MM-DD.loglocalhost_access_log.*.txt127.0.0.1 - - [12/Oct/2024:10:22:31 +0800] "GET /api/test HTTP/1.1" 200 1234
字段含义:
INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 1234 ms
java.net.BindException: Address already in use
✅ 解决:
ss -lntp | grep 8080
SEVERE [main] org.apache.catalina.core.StandardContext.startInternal
Error during ServletContainerInitializer processing
→ 看 localhost.log 或 catalina.out 中的 Exception
java.lang.OutOfMemoryError: Java heap space
✅ 调整:
/etc/default/tomcat9
JAVA_OPTS="-Xms512M -Xmx1024M"
tail -f /var/log/tomcat9/catalina.out
grep -i error /var/log/tomcat9/catalina.out
grep "2024-10-12 10:" /var/log/tomcat9/catalina.out
less /var/log/tomcat9/localhost_access_log.2024-10-12.txt
Tomcat 通常由 systemd 管理:
systemctl status tomcat9
journalctl -u tomcat9
有些日志也会在:
journalctl -u tomcat9 -f
服务起不来
systemctl statuscatalina.out页面 404 / 500
localhost_access_loglocalhost.log性能问题
如果你有具体的日志内容或报错信息,可以直接贴出来,我可以帮你逐行分析。