温馨提示×

怎么监控CentOS message日志

小樊
62
2026-07-20 16:02:19
栏目: 智能运维

在 CentOS 中,/var/log/messages 是系统核心日志(包含内核、服务、通用系统消息),监控它有多种方式,取决于你是实时查看、长期监控还是自动告警。下面按使用场景给你系统讲解。


一、实时查看 messages 日志(最常用)

1️⃣ 使用 tail -f(最简单)

tail -f /var/log/messages

✅ 适合:临时排查问题
❌ 不适合:长期监控


2️⃣ 使用 less(可搜索)

less /var/log/messages

常用操作:

  • Shift + F:实时跟踪(类似 tail -f)
  • /error:搜索 error
  • q:退出

二、按关键字监控(推荐)

1️⃣ 实时监控 error / fail / warning

tail -f /var/log/messages | grep -iE "error|fail|warn"

2️⃣ 高亮显示(更易读)

tail -f /var/log/messages | grep --color -iE "error|fail|warn|critical"

三、使用 systemd(CentOS 7+ 推荐)

CentOS 7 以后很多日志由 journald 管理,messages 可能不完整。

1️⃣ 查看 systemd 日志

journalctl -f

2️⃣ 查看内核日志

journalctl -k -f

3️⃣ 查看某个服务日志

journalctl -u sshd -f

四、自动监控并告警(生产环境)

✅ 方法 1:使用 rsyslog 规则(高级)

编辑 rsyslog 配置:

vim /etc/rsyslog.conf

或新建:

vim /etc/rsyslog.d/monitor.conf

示例(将 error 转发到单独文件):

:msg, contains, "error" /var/log/error.log
& stop

重启 rsyslog:

systemctl restart rsyslog

✅ 方法 2:使用 logwatch(自动日报)

安装:

yum install logwatch -y

生成报告:

logwatch --detail high --range today

✅ 适合:每日自动邮件汇总日志


✅ 方法 3:使用 falco / auditd(安全监控)

auditd 监控 messages 相关行为

auditctl -w /var/log/messages -p rw -k messages_monitor

查看:

ausearch -k messages_monitor

五、使用 Zabbix / Prometheus(企业级)

Zabbix 监控 messages

  • 使用 Zabbix Agent
  • 监控关键字:
    • error
    • failed
    • OOM
    • kernel panic

Prometheus + node_exporter

  • 收集系统日志
  • 配合 Alertmanager 告警

六、常见需要重点监控的内容

关键词 含义
error 一般错误
failed 服务启动失败
OOM 内存溢出
segfault 程序崩溃
kernel: 内核问题
refused 连接被拒绝

七、messages 日志不更新怎么办?

1️⃣ 检查 rsyslog 是否运行

systemctl status rsyslog

2️⃣ CentOS 7+ 日志可能在这里

journalctl -xe

总结(推荐组合)

场景 推荐方式
临时排查 tail -f
长期观察 journalctl -f
告警 logwatch / Zabbix
安全 auditd

如果你能告诉我:

  • ✅ CentOS 版本(6 / 7 / 8 / Stream)
  • ✅ 是排查故障还是做监控告警
  • ✅ 是否服务器可联网

我可以给你 一套精准的监控方案(含脚本或告警规则)。

0 踩