在CentOS中利用Java日志进行故障排查可按以下步骤操作:
- 查看Java进程与日志路径
- 使用
ps -ef | grep java确认Java进程及PID,通过进程配置文件(如Spring Boot的application.properties)或默认路径(如/var/log/、catalina.out)定位日志文件。
- 使用
- 实时查看与过滤日志
- 用
tail -f /path/to/logfile.log实时跟踪日志,结合grep "ERROR"快速定位错误信息。
- 用
- 分析异常日志类型
- 程序崩溃:查看
hs_err_pid.log(位于/var/log/),分析堆栈、内存等信息。 - 业务异常:通过日志级别(ERROR/WARN)筛选关键错误,结合上下文定位代码逻辑问题。
- 程序崩溃:查看
- 检查日志框架配置
- 确保项目中仅使用一种日志框架(如Log4j/Logback),配置文件(
log4j.properties/logback.xml)需正确设置级别、输出路径等。
- 确保项目中仅使用一种日志框架(如Log4j/Logback),配置文件(
- 系统资源与日志管理
- 用
top/free -m监控CPU/内存,df -h检查磁盘空间,避免日志文件过大影响性能。 - 通过
logrotate配置日志轮转,避免单个文件过大。
- 用
- 高级工具辅助分析
- 使用ELK Stack(Elasticsearch+Logstash+Kibana)实现日志的集中存储、实时分析与可视化。
- 对于复杂场景,可结合APM工具(如SkyWalking)追踪分布式系统中的调用链路。
关键命令总结:
- 查看进程:
ps -ef | grep java - 实时日志:
tail -f /path/to/logfile.log - 过滤错误:
grep "ERROR" /path/to/logfile.log - 查看系统日志:
journalctl -u 服务名或tail -f /var/log/messages。