首页主机资讯centos tomcat日志中如何查看请求

centos tomcat日志中如何查看请求

时间2025-11-14 12:21:03发布访客分类主机资讯浏览1109
导读:定位访问日志文件 Tomcat 的请求记录(访问日志)默认位于 $CATALINA_HOME/logs,常见文件名形如:localhost_access_log.YYYY-MM-DD.txt。如果未生成,需要在 conf/server.x...

定位访问日志文件

  • Tomcat 的请求记录(访问日志)默认位于 $CATALINA_HOME/logs,常见文件名形如:localhost_access_log.YYYY-MM-DD.txt。如果未生成,需要在 conf/server.xmlHost 中配置 AccessLogValve 才会写入访问日志。示例默认配置:
    <
        Valve className="org.apache.catalina.valves.AccessLogValve"
           directory="logs"
           prefix="localhost_access_log."
           suffix=".txt"
           pattern="common"
           resolveHosts="false"/>
    
    
    修改后重启 Tomcat 即可在 logs/ 目录看到按日期切分的访问日志文件。

常用查看命令

  • 进入日志目录并查看最近的访问日志:
    cd $CATALINA_HOME/logs
    tail -n 200 localhost_access_log.$(date +%F).txt
    
  • 实时查看新增请求:
    tail -f localhost_access_log.$(date +%F).txt
    
  • 按关键字过滤(如 4xx/5xx 或某个接口路径):
    tail -f localhost_access_log.*.txt | egrep ' 4[0-9]{
    2}
     | 5[0-9]{
    2}
    '
    tail -f localhost_access_log.*.txt | grep '/api/v1/order'
    
  • 查看指定时间段的日志(示例:2025-11-14 10:00 到 12:00):
    sed -n '/2025-11-14 10:00/,/2025-11-14 12:00/p' localhost_access_log.*.txt
    
  • 如果 Tomcat 以 systemd 管理,也可查看服务输出(包含控制台日志,非访问日志):
    journalctl -u tomcat.service -f
    

以上命令适用于 CentOS 下的 Tomcat 日志查看与过滤。

访问日志格式与字段含义

  • 常见格式别名:
    • common%h %l %u %t “%r” %s %b
    • combined%h %l %u %t “%r” %s %b “%{ Referer} i” “%{ User-Agent} i”
  • 关键占位符释义(便于读懂日志每一列):
    • %h:远程 IP
    • %l:远程逻辑用户名(通常为 -
    • %u:已认证远程用户(无则 -
    • %t:请求时间(Common Log Format)
    • %r:请求首行(方法 + URL + 协议)
    • %s:响应状态码
    • %b:响应字节数(不含响应头,0 显示 -
    • %D / %T:处理耗时(毫秒/秒)
    • %{ xxx} i / %{ xxx} o:请求头/响应头
    • %{ xxx} c:Cookie
  • 示例行(combined 格式):
    192.168.1.10 - - [14/Nov/2025:10:23:45 +0800] "GET /app/index.jsp HTTP/1.1" 200 1234 "https://example.com/" "Mozilla/5.0 ..."
    

上述占位符与格式别名含义可用于自定义访问日志内容与可读性优化。

没有访问日志时的排查与配置建议

  • 检查 conf/server.xml 中对应 Host 是否包含 AccessLogValve,并确保未注释;保存后重启 Tomcat。
  • 确认日志目录 logs/ 存在且 Tomcat 进程对该目录有写权限(属主/权限设置正确)。
  • 自定义需求(如记录 Referer、User-Agent、请求耗时、请求头等)可在 pattern 中使用相应占位符,例如:
    pattern="%h %l %u %t \"%r\" %s %b \"%{
    Referer}
    i\" \"%{
    User-Agent}
        i\" %D"
    
    修改后重启,新的访问日志将按新格式输出。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos tomcat日志中如何查看请求
本文地址: https://pptw.com/jishu/747902.html
centos tomcat日志中如何查看错误码 centos tomcat日志中如何查看响应时间

游客 回复需填写必要信息