温馨提示×

怎样监控linux实时日志

小樊
60
2026-09-20 18:43:24
栏目: 智能运维

在 Linux 下“监控实时日志”通常指持续查看日志文件的新增内容,或集中收集并告警。下面按使用场景从简单到专业介绍。


一、最常用:实时查看日志内容

1️⃣ tail -f(最基础)

tail -f /var/log/messages
  • 实时显示文件末尾新增内容
  • 适合排查单个日志文件

退出:Ctrl + C

2️⃣ tail -F(更推荐)

tail -F /var/log/nginx/access.log
  • 文件被轮转(logrotate)后仍能继续监控
  • 比 -f 更稳妥

二、按关键字实时监控

结合 grep

tail -F /var/log/app.log | grep ERROR

高亮显示

tail -F /var/log/app.log | grep --color=auto ERROR

三、使用 less 实时跟踪

less +F /var/log/syslog
  • 进入后按 F 实时跟踪
  • 按 Ctrl + C 停止
  • 可搜索(/关键字)

适合边看边查。


四、systemd 系统(现代 Linux)

journalctl -f

journalctl -f

实时监控所有系统日志

指定服务

journalctl -u nginx -f

指定优先级

journalctl -p err -f

五、多文件同时监控

multitail

multitail /var/log/nginx/access.log /var/log/nginx/error.log
  • 分屏显示
  • 支持颜色和高亮

安装:

yum install multitail
# 或
apt install multitail

六、自动化监控 & 告警(生产环境)

1️⃣ logwatch(日报)

logwatch --detail High --range today

2️⃣ fail2ban

监控日志并自动封 IP(如 SSH 暴力破解)

3️⃣ ELK / Loki / Prometheus

  • ELK(Elasticsearch + Logstash + Kibana)
  • Grafana Loki
  • Promtail + Loki 适合服务器多、日志量大

七、常见日志位置参考

/var/log/messages      # 系统日志(CentOS)
/var/log/syslog        # 系统日志(Ubuntu)
/var/log/nginx/        # Nginx
/var/log/secure        # 认证日志
journalctl             # systemd

八、推荐组合(实用)

  • 临时排查:tail -F
  • 服务日志:journalctl -u xxx -f
  • 生产监控:Loki / ELK + 告警

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

  • 使用的 Linux 发行版
  • 监控什么日志(Nginx / 应用 / 系统)
  • 是否需要告警

我可以给你更具体的命令或方案。

0 踩