在 CentOS 上实时查看 Java 日志,常见做法取决于日志写在哪里以及用什么方式启动的 Java 程序。下面按常见场景说明:
如果 Java 应用把日志输出到文件(如 app.log):
tail -f /path/to/app.log
只查看最新 100 行并实时刷新:
tail -n 100 -f /path/to/app.log
如果是按天滚动的日志(如 app.log.2026-01-21):
tail -F /path/to/app.log
-F比-f更稳,文件被轮转后还能继续跟。
nohup java -jar app.jar > app.log 2>&1 &
实时查看:
tail -f app.log
如果 Java 是 systemd 服务(如 myapp.service):
journalctl -u myapp -f
查看最近 200 行并实时:
journalctl -u myapp -n 200 -f
tail -f /var/log/java/*.log
或同时看标准输出和错误:
tail -f app.out app.err
只看 ERROR:
tail -f app.log | grep ERROR
忽略大小写:
tail -f app.log | grep -i error
高亮显示:
tail -f app.log | grep --color=auto ERROR
ps -ef | grep java
lsof -p <pid> | grep log
systemctl status myapp
| 框架 | 默认文件 |
|---|---|
| Logback | logback.xml 中配置 |
| Log4j2 | log4j2.xml |
| Spring Boot | application.properties 中 logging.file.name |
如果你愿意,可以告诉我:
我可以给你精确到命令的方案。