温馨提示×

怎么查debian tomcat访问日志

小樊
41
2026-10-07 05:19:59
栏目: 智能运维

在 Debian 上,**Tomcat 的“访问日志”**通常不是 catalina.out,而是 Access Log(访问日志),由 AccessLogValve 生成。下面按常见情况给你说明怎么查。


一、Tomcat 访问日志在哪(默认位置)

1. 默认路径

/var/log/tomcat9/
/var/log/tomcat10/

具体版本取决于你安装的 Tomcat:

  • tomcat9
  • tomcat10

查看目录:

ls -l /var/log/tomcat9/

常见访问日志文件:

localhost_access_log.2026-01-21.txt

二、确认访问日志是否开启

查看 Tomcat 配置

sudo nano /etc/tomcat9/server.xml

找到类似内容:

<Valve className="org.apache.catalina.valves.AccessLogValve"
       directory="logs"
       prefix="localhost_access_log"
       suffix=".txt"
       pattern="%h %l %u %t "%r" %s %b" />

✅ 如果存在且没被注释,说明访问日志是开启的
❌ 如果注释掉了,需要取消注释并重启 Tomcat


三、实时查看访问日志

查看最新访问日志

sudo tail -f /var/log/tomcat9/localhost_access_log.*.txt

查看今天的访问记录

sudo cat /var/log/tomcat9/localhost_access_log.$(date +%F).txt

四、常见排查命令

1. 查看访问最多的 IP

awk '{print $1}' /var/log/tomcat9/localhost_access_log.*.txt | sort | uniq -c | sort -nr | head

2. 查看 404 / 500 请求

grep " 404 " /var/log/tomcat9/localhost_access_log.*.txt
grep " 500 " /var/log/tomcat9/localhost_access_log.*.txt

3. 查看某个接口访问情况

grep "/api/login" /var/log/tomcat9/localhost_access_log.*.txt

五、和“运行日志”区分

日志类型 文件
访问日志 localhost_access_log.*.txt
运行日志 /var/log/tomcat9/catalina.out
启动日志 /var/log/tomcat9/catalina.*.log

查看运行报错:

sudo tail -f /var/log/tomcat9/catalina.out

六、如果没访问日志怎么办

  1. 确认 server.xml 中 AccessLogValve 已启用
  2. 重启 Tomcat:
sudo systemctl restart tomcat9
  1. 重新访问页面,再看日志目录

如果你愿意,可以告诉我:

  • Tomcat 版本(tomcat9 / tomcat10)
  • 是否用 Docker
  • 想查的是 访问日志 还是 报错日志

我可以直接给你最合适的命令。

0 踩