Ubuntu系统下Tomcat日志的默认位置及查看方法
在Ubuntu系统中,Tomcat的日志文件主要存放在以下两个目录之一(具体路径取决于Tomcat的安装方式):
apt包管理器安装):/var/log/tomcat(部分版本可能为/var/log/tomcat9,其中9为Tomcat主版本号);/opt/tomcat/logs(/opt/tomcat为Tomcat的默认安装根目录)。localhost.log(应用层日志)、host-manager.log(主机管理日志)、manager.log(管理控制台日志)等具体文件中,但核心日志文件为catalina.out(包含Tomcat启动、运行及错误信息的全量日志)。使用tail -f命令可实时跟踪catalina.out文件的新增内容,便于动态监控Tomcat运行状态(如启动过程、请求响应、异常抛出等)。
tail -f /var/log/tomcat/catalina.out # 替换为实际路径(如/opt/tomcat/logs/catalina.out)
按Ctrl+C可退出实时查看模式。
若需查看日志的全部历史内容(尤其是排查长期积累的问题),可使用less命令(支持上下翻页、关键字搜索)。
less /var/log/tomcat/catalina.out
在less界面中,按↑/↓键翻页,按/键输入关键字(如ERROR)搜索,按q键退出。
若需快速定位错误或特定事件(如ERROR、Exception、Timeout),可结合grep命令过滤日志内容(不区分大小写)。
grep -i 'error' /var/log/tomcat/catalina.out # 查找所有包含"error"的行(忽略大小写)
grep 'Exception' /var/log/tomcat/catalina.out # 查找所有包含"Exception"的行
若需同时显示匹配行的前后几行(便于上下文分析),可添加-A(after)、-B(before)参数:
grep -i 'error' -A 5 -B 5 /var/log/tomcat/catalina.out # 显示匹配行及前后5行
若需分析某一时间段内的日志(如凌晨2点至3点的异常),可使用sed命令截取指定时间范围的日志(需日志中包含时间戳,且格式一致)。
sed -n '/2025-10-31 02:00:00/,/2025-10-31 03:00:00/p' /var/log/tomcat/catalina.out
若需调整日志的存储位置或详细程度,可通过修改Tomcat的配置文件实现:
conf/server.xml文件,找到<Valve className="org.apache.catalina.valves.AccessLogValve">标签,调整directory(日志目录)和prefix(日志前缀)属性(如将访问日志路径改为/opt/tomcat/logs/access);conf/logging.properties文件,修改java.util.logging.ConsoleHandler.level(控制台日志级别)或org.apache.catalina.level(Tomcat核心日志级别),可选值为SEVERE(严重)、WARNING(警告)、INFO(信息)、CONFIG(配置)、FINE(详细)、FINER(更详细)、FINEST(最详细)。通过以上方法,可快速定位并查看Ubuntu系统中Tomcat的日志文件,为故障排查、性能分析提供有力支持。