阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

ngxtop:在命令行下实时监控 Nginx

128次阅读
没有评论

共计 3553 个字符,预计需要花费 9 分钟才能阅读完成。

Nginx 网站服务器在生产环境中运行的时候需要进行实时监控。实际上,诸如 Nagios, Zabbix, Munin 的网络监控软件是支持 Nginx 监控的。

如果你不需要以上软件提供的综合性报告或者长期数据统计功能,只是需要一种快速简便的办法去监控 Nginx 服务器的请求的话,我建议你采用一个叫 ngxtop 的命令行工具。

你马上就会发现 ngxtop 从界面和名称都借鉴了著名的 top 命令。ngxtop 是通过分析 Nginx 或者其他的日志文件,使用类似 top 命令的界面实时展示出来的。你可以说你知道的其他高端监控工具,但是在简洁这方面 ngxtop 无疑是最好的。简单就意味着不可替代。

本指南中,我将介绍如何使用 ngxtop 实时监控 Nginx 网站服务器。

ngxtop: 实时监视 Nginx http://www.linuxidc.com/Linux/2014-03/99233.htm

CentOS 6.2 实战部署 Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm

使用 Nginx 搭建 WEB 服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm

搭建基于 Linux6.3+Nginx1.2+PHP5+MySQL5.5 的 Web 服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm

CentOS 6.3 下 Nginx 性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm

CentOS 6.3 下配置 Nginx 加载 ngx_pagespeed 模块 http://www.linuxidc.com/Linux/2013-09/89657.htm

CentOS 6.4 安装配置 Nginx+Pcre+php-fpm http://www.linuxidc.com/Linux/2013-08/88984.htm

Nginx 搭建视频点播服务器(仿真专业流媒体软件)http://www.linuxidc.com/Linux/2012-08/69151.htm

Linux 上安装 ngxtop

首先在 Linux 系统中安装依赖库 pip(LCTT 译注:ngxtop 是用 python 编写的)。

然后使用如下命令安装 ngxtop。

  1. $ sudo pip install ngxtop

ngxtop 使用

基本使用方法如下:

  1. ngxtop [options]
  2. ngxtop [options](print|top|avg|sum)<var>
  3. ngxtop info

这里是一些通用选项。

  • -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

使用 ngxtop 监控 Nginx

ngxtop 默认会从其配置文件 (/etc/nginx/nginx.conf) 中查找 Nginx 日志的地址。所以,监控 Nginx,运行以下命令即可:

  1. $ ngxtop

这将会列出 10 个 Nginx 服务,按请求数量排序。

显示前 20 个最频繁的请求:

  1. $ ngxtop n 20

ngxtop:在命令行下实时监控 Nginx

获取 Nginx 基本信息:

  1. $ ngxtop info

ngxtop:在命令行下实时监控 Nginx

你可以自定义显示的变量,简单列出需要显示的变量。使用 “print” 命令显示自定义请求。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/103246p2.htm

  1. $ ngxtop print request http_user_agent remote_addr

ngxtop:在命令行下实时监控 Nginx

显示请求最多的客户端 IP 地址

  1. $ ngxtop top remote_addr

ngxtop:在命令行下实时监控 Nginx

显示状态码是 404 的请求

  1. $ ngxtop i ‘status == 404’print request status

ngxtop:在命令行下实时监控 Nginx

除了 Nginx,ngtop 还可以处理其他的日志文件,比如 Apache 的访问文件。使用以下命令监控 Apache 服务器:

    1. $ tail f /var/log/apache2/access.log | ngxtop f common

Nginx 网站服务器在生产环境中运行的时候需要进行实时监控。实际上,诸如 Nagios, Zabbix, Munin 的网络监控软件是支持 Nginx 监控的。

如果你不需要以上软件提供的综合性报告或者长期数据统计功能,只是需要一种快速简便的办法去监控 Nginx 服务器的请求的话,我建议你采用一个叫 ngxtop 的命令行工具。

你马上就会发现 ngxtop 从界面和名称都借鉴了著名的 top 命令。ngxtop 是通过分析 Nginx 或者其他的日志文件,使用类似 top 命令的界面实时展示出来的。你可以说你知道的其他高端监控工具,但是在简洁这方面 ngxtop 无疑是最好的。简单就意味着不可替代。

本指南中,我将介绍如何使用 ngxtop 实时监控 Nginx 网站服务器。

ngxtop: 实时监视 Nginx http://www.linuxidc.com/Linux/2014-03/99233.htm

CentOS 6.2 实战部署 Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm

使用 Nginx 搭建 WEB 服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm

搭建基于 Linux6.3+Nginx1.2+PHP5+MySQL5.5 的 Web 服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm

CentOS 6.3 下 Nginx 性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm

CentOS 6.3 下配置 Nginx 加载 ngx_pagespeed 模块 http://www.linuxidc.com/Linux/2013-09/89657.htm

CentOS 6.4 安装配置 Nginx+Pcre+php-fpm http://www.linuxidc.com/Linux/2013-08/88984.htm

Nginx 搭建视频点播服务器(仿真专业流媒体软件)http://www.linuxidc.com/Linux/2012-08/69151.htm

Linux 上安装 ngxtop

首先在 Linux 系统中安装依赖库 pip(LCTT 译注:ngxtop 是用 python 编写的)。

然后使用如下命令安装 ngxtop。

  1. $ sudo pip install ngxtop

ngxtop 使用

基本使用方法如下:

  1. ngxtop [options]
  2. ngxtop [options](print|top|avg|sum)<var>
  3. ngxtop info

这里是一些通用选项。

  • -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

使用 ngxtop 监控 Nginx

ngxtop 默认会从其配置文件 (/etc/nginx/nginx.conf) 中查找 Nginx 日志的地址。所以,监控 Nginx,运行以下命令即可:

  1. $ ngxtop

这将会列出 10 个 Nginx 服务,按请求数量排序。

显示前 20 个最频繁的请求:

  1. $ ngxtop n 20

ngxtop:在命令行下实时监控 Nginx

获取 Nginx 基本信息:

  1. $ ngxtop info

ngxtop:在命令行下实时监控 Nginx

你可以自定义显示的变量,简单列出需要显示的变量。使用 “print” 命令显示自定义请求。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/103246p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计3553字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中