温馨提示×

Tomcat日志在哪查看

小樊
45
2025-12-09 23:14:32
栏目: 智能运维

Tomcat日志位置与查看方法

默认日志目录与常见文件

  • 日志默认在 Tomcat 安装目录的 logs 文件夹,即 $CATALINA_HOME/logs(Linux/macOS)或 %CATALINA_HOME%\logs(Windows)。常见文件与作用如下:
    • catalina.out:标准输出与错误输出(启动、停止与运行期重要信息)
    • catalina.[yyyy-mm-dd].log:按日期分割的 Catalina 日志
    • localhost.[yyyy-mm-dd].log:应用部署到 localhost 的日志
    • localhost_access_log.[yyyy-mm-dd].txt:访问日志(HTTP 请求)
    • manager.[yyyy-mm-dd].log / host-manager.[yyyy-mm-dd].log:管理应用日志
    • 若未生成 catalina.out,可同时检查 stderrlocalhost 日志文件。

快速定位安装目录

  • Linux/macOS:在终端执行 echo $CATALINA_HOME
  • Windows:在命令提示符执行 echo %CATALINA_HOME%
  • 输出即为 Tomcat 安装路径,进入该路径下的 logs 目录即可查看日志。

常用查看方式

  • Linux/macOS
    • 进入日志目录:cd $CATALINA_HOME/logs
    • 实时查看:tail -f catalina.out
    • 分页查看:less catalina.out
    • 关键字过滤:tail -f catalina.out | grep “ERROR”
    • 按时间段导出:
      • sed -n “/2025-12-01/,/2025-12-02/p” catalina.out > /tmp/tomcat_logs.txt
  • Windows
    • 资源管理器进入 %CATALINA_HOME%\logs,用 notepad++/VS Code 打开 catalina.outlocalhost.log*
    • 命令行查看(PowerShell 或 CMD):
      • 实时查看:Get-Content .\logs\catalina.out -Wait
      • 查看末尾 100 行:Get-Content .\logs\catalina.out -Tail 100
  • 作为 systemd 服务运行时
    • 查看服务日志:journalctl -u tomcat.service -f(按 Ctrl+C 退出)

不同系统与安装方式的路径差异

  • 不同发行版或安装包(如 yum/apt、官方压缩包、RPM)可能将日志放在不同目录,常见示例:
    • Tomcat 7(RPM/系统包)/var/log/tomcat7/(如 catalina.out、localhost_access_log)
    • Tomcat 8+(官方压缩包)/opt/tomcat/logs/(如 catalina.out、localhost_access_log)
    • 自定义安装:以 $CATALINA_HOME/logs 为准
  • 建议先用 echo $CATALINA_HOMEecho %CATALINA_HOME% 确认实际路径。

日志轮转与配置

  • 日志轮转
    • 系统级:logrotate(检查 /etc/logrotate.d/tomcat 配置,支持按日轮转、压缩、保留天数)
    • 示例(保留最近 7 天并压缩):
      • /usr/local/tomcat/logs/catalina.out { daily rotate 7 compress missingok notifempty create 640 tomcat tomcat postrotate /bin/kill -HUP cat /var/run/tomcat.pid endscript }
  • 日志级别与输出
    • 配置 $CATALINA_HOME/conf/logging.properties(如 1catalina.org.apache.juli.FileHandler.level = FINE
    • 若以服务运行,也可用 journalctl 统一查看服务日志。

0