温馨提示×

linux怎么实时监控nginx日志

小樊
36
2026-09-05 17:40:15
栏目: 智能运维

在 Linux 下实时监控 Nginx 日志,常见且实用的方法如下:


一、最基础:tail -f

tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

同时监控多个日志:

tail -f /var/log/nginx/access.log /var/log/nginx/error.log

✅ 适合:快速查看实时请求


二、只看新增内容(不显示历史)

tail -n 0 -f /var/log/nginx/access.log

三、实时过滤关键信息(grep)

只看 404 / 500:

tail -f /var/log/nginx/access.log | grep -E " 404 | 500 "

只看某个 IP:

tail -f /var/log/nginx/access.log | grep "192.168.1.100"

四、带高亮(更直观)

tail -f /var/log/nginx/access.log | grep --color=auto " 500 "

五、使用 multitail(多窗口)

安装:

yum install multitail      # CentOS
apt install multitail      # Ubuntu

使用:

multitail /var/log/nginx/access.log /var/log/nginx/error.log

✅ 适合:同时看多个日志,分屏显示


六、实时统计(请求数 / IP)

实时统计每秒请求数

watch -n 1 "wc -l /var/log/nginx/access.log"

实时 Top IP

tail -f /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c

七、更专业方案(生产推荐)

1️⃣ GoAccess(实时 Web 监控)

apt install goaccess
goaccess /var/log/nginx/access.log -o report.html --log-format=COMBINED

实时终端模式:

goaccess /var/log/nginx/access.log --log-format=COMBINED -o /dev/stdout

2️⃣ ELK / Loki + Grafana

适合:

  • 多台服务器
  • 长期分析
  • 告警

八、Nginx 日志路径不确定?

nginx -T | grep "access_log"
nginx -T | grep "error_log"

总结推荐

场景 推荐方式
临时看日志 tail -f
排查错误 tail -f + grep
多日志 multitail
生产监控 GoAccess / ELK

如果你愿意,我可以按你的 Nginx 配置给你写一条最合适的实时监控命令。

0