在 CentOS 上排查 Java 日志,一般分 “日志在哪 → 怎么看 → 常见异常怎么定位” 三步。下面给你一个实用排查指南。
Java 应用一般用:
/var/log/xxx/
/home/xxx/logs/
/app/xxx/logs/
查看配置文件确认路径:
find / -name "logback.xml" 2>/dev/null
find / -name "log4j2.xml" 2>/dev/null
/var/log/tomcat/
/opt/tomcat/logs/
常见文件:
catalina.out(最重要)localhost.logcatalina.YYYY-MM-DD.log实时查看:
tail -f /opt/tomcat/logs/catalina.out
默认:
/var/log/appname/
./logs/
或用:
journalctl -u your-service
/var/log/messages
/var/log/syslog
journalctl -xe
tail -f xxx.log
grep -i error xxx.log
grep -i exception xxx.log
sed -n '/2026-01-21 10:00/,/2026-01-21 11:00/p' xxx.log
ps -ef | grep java
jps -l
jstack <pid> > thread.txt
jmap -heap <pid>
日志特征:
java.lang.OutOfMemoryError: Java heap space
排查:
jmap -dump:format=b,file=heap.hprof <pid>
用 MAT / VisualVM 分析
日志特征:
Found one Java-level deadlock
排查:
jstack <pid>
日志特征:
Address already in use
排查:
netstat -tunlp | grep 8080
lsof -i:8080
日志特征:
Communications link failure
Connection refused
检查:
ps -ef | grep java
tail -200 catalina.out
grep -i exception catalina.out
jstack pid
如果你能贴一下:
我可以直接帮你定位问题。