上一篇                     
               
			  Linux如何查看Tomcat日志
- Linux
- 2025-06-21
- 4274
 在Linux下查看Tomcat日志,主要进入其安装目录下的
 
 
logs文件夹(通常位于
 /opt/tomcat/logs或
 $CATALINA_HOME/logs),使用
 tail -f catalina.out命令可实时查看并滚动显示最新日志内容,也可用
 less或
 cat查看其他日志文件。
Tomcat日志核心目录
默认路径为:$CATALINA_HOME/logs/
($CATALINA_HOME是Tomcat安装目录,可通过 echo $CATALINA_HOME 或 ps -ef | grep tomcat 查看)
关键日志文件:
- catalina.out 主控制台日志,包含启动信息、未捕获异常、System.out.println()输出。 
- catalina.yyyy-mm-dd.log 每日归档的完整日志(日期替换实际日期)。  
- localhost.yyyy-mm-dd.log 应用部署日志(如Servlet加载错误)。 
- localhost_access_log.yyyy-mm-dd.txt HTTP访问日志(请求路径、状态码、响应时间)。 
查看日志的5种方法
方法1:实时监控日志(最常用)
tail -f $CATALINA_HOME/logs/catalina.out
- -f参数:持续输出新增内容(调试必备)。
- 终止监控:按 Ctrl+C。
方法2:过滤关键错误(如内存溢出)
grep -i "outofmemoryerror" catalina.out
- -i:忽略大小写(如 OutOfMemoryError)。
- 组合命令:grep "ERROR" catalina.out -A 5(显示匹配行及后5行)。
方法3:按时间范围查看
# 查看最近100行 tail -n 100 catalina.out # 查看今日日志(假设日期为2025-10-01) cat catalina.2025-10-01.log
方法4:多文件联合检索
# 在所有日志中搜索关键词 grep "NullPointerException" $CATALINA_HOME/logs/*.log
方法5:使用less分页查看
less catalina.out
- 操作键: 
  - 空格键:向下翻页
- :搜索(按 n跳转下一个)
- q:退出
 
高级技巧
-  动态切换日志文件 
 当catalina.out过大时(如超过2GB),用cp /dev/null catalina.out清空文件(先备份!)。 
-  权限问题处理 
 若提示Permission denied:sudo chown -R $USER:$USER $CATALINA_HOME/logs/ # 修改日志所属用户 sudo chmod 755 logs/ # 开放目录权限 
-  自定义日志路径 
 修改$CATALINA_HOME/conf/logging.properties,1catalina.org.apache.juli.AsyncFileHandler.directory = /opt/tomcat_logs 
-  日志切割工具 
 使用logrotate自动归档(避免文件过大): /opt/tomcat/logs/catalina.out { daily rotate 30 compress missingok copytruncate }
常见问题排查场景
- 启动失败:
 grep "SEVERE" catalina.out检查致命错误。
- HTTP 404响应:
 查看localhost_access_log确认请求路径。
- 内存泄漏:
 搜索GC overhead limit exceeded或java.lang.OutOfMemoryError。
- 应用未加载:
 检查localhost.log中的Deployment failure。
安全提示
- 禁止直接修改生产日志:通过只读命令查看(如 cat、less)。
- 敏感信息脱敏:确保日志不输出密码、密钥等(配置 log4j.properties过滤)。
引用说明基于Apache Tomcat 9官方文档及Linux Bash操作标准实践,适用于CentOS/Ubuntu等主流发行版,命令经过实测验证,符合服务器安全规范。
 
  
			