温馨提示×

centosjava日志如何检索

小樊
46
2026-09-21 09:33:46
栏目: 编程语言

CentOS 上检索 Java 日志,常见做法和命令如下,按使用频率从高到低整理:


一、确认 Java 日志位置

Java 日志通常在以下位置之一:

  • 应用自定义路径(如 /opt/app/logs/
  • Tomcat:/var/log/tomcat/
  • Spring Boot:/home/app/app.log
  • systemd 管理的服务:journalctl

二、最常用:grep 检索日志

1️⃣ 按关键字检索

grep "ERROR" /var/log/java/app.log

2️⃣ 忽略大小写

grep -i "exception" app.log

3️⃣ 显示行号

grep -n "NullPointerException" app.log

4️⃣ 多关键字(与)

grep "ERROR" app.log | grep "timeout"

5️⃣ 多关键字(或)

grep -E "ERROR|WARN" app.log

三、按时间范围检索

1️⃣ 检索某天日志

grep "2024-01-21" app.log

2️⃣ 时间区间(假设日志有时间戳)

awk '$0 >= "2024-01-21 10:00" && $0 <= "2024-01-21 11:00"' app.log

四、实时跟踪日志(tail)

1️⃣ 实时查看

tail -f app.log

2️⃣ 实时过滤 ERROR

tail -f app.log | grep "ERROR"

五、大日志文件检索(性能更好)

1️⃣ zgrep(压缩日志)

zgrep "ERROR" app.log.2024-01-21.gz

2️⃣ less(可搜索)

less app.log

在 less 中:

  • /关键字 向下搜索
  • ?关键字 向上搜索
  • n 下一个

六、systemd 管理的 Java 服务

1️⃣ 查看日志

journalctl -u your-java-service

2️⃣ 实时查看

journalctl -u your-java-service -f

3️⃣ 按时间

journalctl --since "2024-01-21 10:00" --until "11:00"

七、常见 Java 异常检索示例

grep -A 20 "Exception" app.log

-A 20 显示异常后 20 行,方便看堆栈)


八、推荐组合(实战)

grep "ERROR" app.log | grep -A 10 "Exception"

如果你能告诉我:

  • Java 应用类型(Spring Boot / Tomcat / 自研)
  • 日志路径
  • 想查什么(错误、性能、某个用户)

我可以直接给你 精准检索命令

0