在 Debian 上运行 Tomcat 时“没有日志”,通常不是 Tomcat 完全不写日志,而是日志位置、权限、配置或视角出了问题。下面按最常见原因逐一说明,并给出排查方法。
如果你是用:
apt install tomcat9
那么日志不在 CATALINA_HOME/logs,而在:
/var/log/tomcat9/
常见文件:
catalina.outcatalina.loglocalhost.loghost-manager.logmanager.log✅ 检查:
ls -l /var/log/tomcat9/
Debian 10+ 通常用 systemd 管理 Tomcat:
systemctl status tomcat9
journalctl -u tomcat9
很多时候:
catalina.out 是空的journalctl✅ 查看:
journalctl -u tomcat9 -f
Debian 的 Tomcat 默认以 tomcat 用户运行:
ps aux | grep tomcat
如果日志目录权限不对:
/var/log/tomcat9 root:root 750
Tomcat 就写不进去,但也不会报错(尤其 systemd 下)。
✅ 修复:
chown -R tomcat:adm /var/log/tomcat9
chmod 750 /var/log/tomcat9
Tomcat 使用:
/etc/tomcat9/logging.properties
如果:
就会“看起来没日志”。
✅ 检查关键内容:
handlers = 1catalina.org.apache.juli.FileHandler, ...
.level = INFO
很多 Spring / Java 应用:
✅ 检查:
/var/log/tomcat9/
你的应用目录/logs/
或在 application.properties:
logging.file.name=/var/log/tomcat9/myapp.log
如果:
那你自然“看不到日志”。
✅ 检查:
systemctl status tomcat9
ss -lntp | grep 8080
df -h
df -i
满了 Tomcat 会静默失败。
# 1. 日志在哪
ls /var/log/tomcat9
# 2. systemd 日志
journalctl -u tomcat9 -n 100
# 3. 进程用户
ps aux | grep tomcat
# 4. 权限
namei -l /var/log/tomcat9/catalina.out
# 5. 配置
cat /etc/tomcat9/logging.properties
如果你愿意,可以告诉我:
我可以精准告诉你“为什么你现在一条日志都看不到”。