JSP日志的位置取决于应用部署方式和日志框架配置,常见路径包括:
$CATALINA_BASE/logs
目录下,主要文件包括: catalina.out
:Tomcat标准输出/错误的汇总日志(包含JSP运行错误);localhost.<date>.log
:JSP页面及Servlet的访问和错误日志;manager.<date>.log
/host-manager.<date>.log
:Tomcat管理界面的日志。log4j.properties
或logback.xml
中配置(如/var/log/jsp/myapp.log
)。/var/log/messages
(CentOS 7及以下)或/var/log/syslog
(CentOS 8及以上)查看,使用grep -i "java"
过滤Java相关日志。tail -f
命令实时跟踪日志文件的新增内容(如Tomcat的catalina.out
):tail -f /path/to/tomcat/logs/catalina.out
grep
命令筛选关键字(如“ERROR”表示错误日志、“INFO”表示信息日志):grep "ERROR" /var/log/jsp/myapp.log # 筛选自定义日志中的错误 grep "JSP" /var/log/messages # 筛选系统日志中的JSP相关记录
jps
命令找到进程ID(PID),再查看进程的标准输出/错误:jps # 列出所有Java进程及PID cat /proc/<PID>/fd/1 # 查看进程的标准输出(1为stdout,2为stderr)
journalctl
查看系统日志(适用于CentOS 7及以上),可过滤特定服务的日志(如Tomcat服务名为tomcat
):journalctl -u tomcat -n 100 # 查看Tomcat最近的100条日志 journalctl -u tomcat --since "1 hour ago" # 查看过去1小时的Tomcat日志
awk
、sed
等工具提取关键信息(如时间、错误类型、请求URL):awk '/ERROR/ {print $1, $2, $3, $NF}' /var/log/jsp/myapp.log # 提取错误日志的时间、级别和最后字段(如错误消息) sed -n '/2025-09-20 10:00:00/,/2025-09-20 11:00:00/p' /var/log/catalina.out # 提取指定时间段的日志
logrotate
工具自动压缩、备份旧日志,避免日志文件过大占用磁盘空间。创建/etc/logrotate.d/jsp
配置文件(示例):/var/log/jsp/*.log { daily # 每天轮转 rotate 30 # 保留30天的日志 compress # 压缩旧日志(如.gz格式) missingok # 若日志不存在也不报错 notifempty # 若日志为空则不轮转 create 0644 root root # 创建新日志文件的权限和所有者 }
/var/log/jsp/*.log
),解析后发送到Elasticsearch;logwatch
生成每日日志报告(包含错误统计),并通过邮件发送:yum install logwatch -y logwatch --output mail --mailto your_email@example.com --service http # 监控HTTP服务日志
log4j.rootLogger=INFO
调整为DEBUG
以获取更详细日志,或ERROR
以仅记录错误)。sudo
查看/var/log/messages
)。rotate 30
保留30天)和压缩方式(如compress
)。