转载自 https://linux.cn/article-3205-1.html
1 linux 上面安装ngxtop
yum -y install python-pip; pip install ngxtop
2 ngxtop的使用
这里是一些通用选项。
-l : 指定日志文件的完整路径 (Nginx 或 Apache2)
-f : 日志格式
--no-follow: 处理当前已经写入的日志文件,而不是实时处理新添加到日志文件的日志
-t : 更新频率
-n : 显示行号
-o : 排序规则(默认是访问计数)
-a ..., --a ...: 添加表达式(一般是聚合表达式如: sum, avg, min, max 等)到输出中。
-v: 输出详细信息
-i : 只处理符合规则的记录
以下是一些内置变量,他们的含义不言自明。
bodybytessend
http_referer
httpuseragent
remote_addr
remote_user
request
status
time_local
3 ngxtop监控nginx
ngxtop 默认会从其配置文件 (/etc/nginx/nginx.conf) 中查找 Nginx 日志的地址。所以,监控 Nginx ,运行以下命令即可:
1)ngxtop
如图
2)ngxtop -n 20
你可以自定义显示的变量,简单列出需要显示的变量。使用 "print" 命令显示自定义请求。
3)ngxtop print request http_user_agent remote_addr
显示请求最多的客户端IP地址
4)ngxtop top remote_addr
显示状态码是404的请求
5) ngxtop -i 'status == 404' print request status
除了Nginx,ngtop 还可以处理其他的日志文件,比如 Apache 的访问文件。使用以下命令监控 Apache 服务器:
6)tail -f /var/log/apache2/access.log | ngxtop -f common