温馨提示×

centosjava日志怎么监控

小樊
36
2026-09-21 09:21:47
栏目: 编程语言

在 CentOS 上监控 Java 日志,常见做法可以分为 系统级日志查看、实时监控、集中化日志管理、以及 Java 应用自身监控 几个层面。下面给你一套实用方案。


一、基础:先看 Java 日志在哪

Java 日志位置通常由应用决定,常见有:

  • Tomcat:/var/log/tomcat/
  • Spring Boot:
    • nohup.out
    • 指定的 logs/app.log
  • 系统日志:/var/log/messages/var/log/journal

先确认:

ps -ef | grep java

找到 -Dlogging.file 或启动脚本里的日志路径。


二、实时监控 Java 日志(最常用)

1. tail 实时查看

tail -f /path/to/app.log

只看 ERROR:

tail -f /path/to/app.log | grep ERROR

2. less 动态跟踪

less +F /path/to/app.log

Ctrl+C 停止,F 继续。

3. multitail(多日志同时看)

yum install -y multitail
multitail /var/log/app1.log /var/log/app2.log

三、关键字告警(简单监控)

1. 定时检测 ERROR

grep ERROR /path/to/app.log | mail -s "Java Error" admin@xxx.com

2. 使用 logwatch(CentOS 自带)

yum install logwatch
logwatch --service java --range today

四、系统级监控(Java 进程 + 日志)

1. journalctl(systemd 服务)

如果是 systemd 启动的 Java:

journalctl -u your-java-service -f

2. 进程挂掉自动重启

systemctl enable your-java-service

配合日志:

journalctl -u your-java-service | grep -i exception

五、集中化日志监控(推荐生产环境)

1. ELK(Elasticsearch + Logstash + Kibana)

  • Filebeat 采集 Java 日志
  • Elasticsearch 存储
  • Kibana 可视化 + 告警

2. Loki + Grafana(更轻量)

Promtail -> Loki -> Grafana

适合容器和云原生。

3. Zabbix 监控日志

  • 使用 log[] 监控项
  • 匹配 ERROR / Exception
  • 触发告警

六、Java 应用内部监控(进阶)

1. Spring Boot Actuator

management:
  endpoints:
    web:
      exposure:
        include: loggers,health,metrics

访问:

/actuator/loggers

2. JVM 日志

jstat -gc <pid>
jstack <pid> > thread.log

七、推荐组合(实用)

开发/测试:

tail -f app.log | grep ERROR

生产环境:

  • Filebeat + Elasticsearch + Kibana
  • 或 Loki + Grafana
  • 关键异常接钉钉/企业微信告警

如果你能告诉我:

  • Java 是 Spring Boot / Tomcat / 其他?
  • 单机还是集群?
  • 是否已有日志系统?

我可以直接给你 可落地的配置示例

0