温馨提示×

centos java日志如何定位

小樊
40
2026-09-15 05:52:00
栏目: 编程语言

在 CentOS 上定位 Java 日志,通常分 “找日志文件 → 看日志内容 → 定位问题” 三步。下面按常见场景说明。


一、先确定 Java 程序类型

1. 普通 Java 程序(jar / java -jar)

日志一般在:

  • 程序当前目录
  • 指定的日志目录
  • 用户 home 目录

常见日志文件名:

app.log
xxx.log
nohup.out

查找:

ps -ef | grep java

找到启动命令里的 -Dlogging.path 或 -Dlog.path


2. Tomcat

日志目录:

/opt/tomcat/logs
/usr/local/tomcat/logs

关键日志:

  • catalina.out(最重要)
  • localhost.log
  • catalina.YYYY-MM-DD.log

查看:

tail -f /opt/tomcat/logs/catalina.out

3. Spring Boot

日志位置由配置决定:

logging:
  file:
    name: /var/log/myapp/app.log

查找:

find / -name "*.log" 2>/dev/null | grep myapp

二、快速定位日志文件

1. 通过进程找

ps -ef | grep java
ls -l /proc/<pid>/cwd

2. 全盘搜索

find / -name "*.log" 2>/dev/null

3. 看启动脚本

cat startup.sh
cat nohup.out

三、常用日志查看命令

实时查看

tail -f app.log

查看末尾

tail -n 200 app.log

搜索关键字

grep -i error app.log
grep -C 5 "Exception" app.log

按时间看

less app.log
# 然后输入 /ERROR

四、Java 异常定位技巧

1. 找异常起点

grep -n "Exception" app.log

2. 看完整堆栈

sed -n '100,200p' app.log

3. 常见关注点

  • Caused by
  • OutOfMemoryError
  • StackOverflowError
  • Connection refused
  • Timeout

五、JVM 自身日志(GC / 崩溃)

GC 日志

-XX:+PrintGCDetails -Xloggc:/var/log/gc.log

查看:

tail -f /var/log/gc.log

JVM 崩溃

hs_err_pid*.log

通常在程序目录或 /tmp


六、日志没输出怎么办?

  • 检查日志级别(INFO / DEBUG)
  • 检查 logback / log4j 配置
  • 检查磁盘是否满:
df -h

如果你能告诉我:

  • Java 是 jar / tomcat / spring boot
  • 报错内容或日志片段

我可以直接帮你 精准定位问题点。

0 踩