温馨提示×

centos如何实时查java日志

小樊
42
2026-10-08 23:56:56
栏目: 编程语言

在 CentOS 上“实时查看 Java 日志”一般有几种常见场景,下面按最常用 → 进阶给你说明。


一、最常用:tail -f 实时查看日志

如果你的 Java 应用日志写在文件里(如 app.log):

tail -f /path/to/app.log

只看最新 100 行并实时跟踪:

tail -n 100 -f /path/to/app.log

✅ 适合:

  • Spring Boot
  • Tomcat
  • 自己写日志文件的应用

二、如果通过 nohup 启动 Java

常见启动方式:

nohup java -jar app.jar > app.log 2>&1 &

实时查看:

tail -f app.log

三、查看系统服务(systemd)的 Java 日志

如果 Java 是用 systemctl 管理的(如 myapp.service):

journalctl -u myapp -f

只看错误:

journalctl -u myapp -f -p err

✅ 适合:

  • 生产环境服务
  • Docker 外的 Java 应用

四、Tomcat 实时日志

Tomcat 日志一般在:

/var/log/tomcat/

实时查看:

tail -f /var/log/tomcat/catalina.out

五、Docker 中的 Java 日志

如果是 Docker 容器:

docker logs -f 容器名或ID

只看最近 200 行:

docker logs --tail 200 -f 容器名

六、日志太多?过滤关键字

只看 ERROR:

tail -f app.log | grep ERROR

忽略 INFO:

tail -f app.log | grep -v INFO

七、高级:多日志同时看(less)

less +F app.log
  • Ctrl + C 停止滚动
  • F 继续实时
  • q 退出

八、常见坑提醒

  1. 日志被 logrotate 切割

    • 用 tail -F(大写 F)自动跟随新文件
    tail -F app.log
    
  2. 日志乱码

    • 检查 LANG
    export LANG=en_US.UTF-8
    

如果你愿意,可以告诉我:

  • Java 是 jar / war / Docker / systemd 哪种
  • 日志路径或启动方式

我可以给你精准命令。

0 踩