下面的指南将教你如何安装和使用 ngxtop。本软件是一款免费、开源、灵活、实时的 Nginx 网络服务器监控工具。它的工作原理是程序解析 Nginx 访问日志并打印有关请求计数、URI 和状态代码等顶级功能的信息。这是系统管理员或高级用户的最爱,他们想要一个轻量级工具来监控对他们的 Nginx Web 服务器的请求。
必要条件
- Ubuntu Server 20.04或以上版本。
- Nginx服务器更新到稳定或主线。
- Root访问权限或具有sudo权限的帐户。
- 更新到最新的系统。
- 已安装Python 3和PIP 3。
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update && sudo apt upgrade -y
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install python3 python3-pip
ngxtop 的安装
安装 python 和 pip 后,我们现在可以继续安装 ngxtop。输入以下命令。
- linuxmi@linuxmi:~/www.linuxmi.com$ pip3 install ngxtop
- Collecting ngxtop
- Downloading ngxtop-0.0.3-py2.py3-none-any.whl (11 kB)
- Collecting docopt
- Downloading docopt-0.6.2.tar.gz (25 kB)
- Requirement already satisfied: pyparsing in /usr/lib/python3/dist-packages (from ngxtop) (2.4.6)
- Collecting tabulate
- Downloading tabulate-0.8.9-py3-none-any.whl (25 kB)
- Building wheels for collected packages: docopt
- Building wheel for docopt (setup.py) ... done
- Created wheel for docopt: filename=docopt-0.6.2-py2.py3-none-any.whl size=13704 sha256=e4e951599acce8f67d071eb659a1f5e65c2c016a4e3dce3b0f62038b63f74a70
- Stored in directory: /home/linuxmi/.cache/pip/wheels/56/ea/58/ead137b087d9e326852a851351d1debf4ada529b6ac0ec4e8c
- Successfully built docopt
- Installing collected packages: docopt, tabulate, ngxtop
- Successfully installed docopt-0.6.2 ngxtop-0.0.3 tabulate-0.8.9
安装后,确认版本。
- linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop --version
示例输出:
xstat 0.1
如何使用 ngxtop
现在,不带任何参数运行 ngxtop 命令将显示请求计数的摘要、请求的 URI、状态代码的请求数。
- linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop
输出如下:
接下来,如果您想查看到 Nginx 服务器的top远程连接列表,请键入以下内容。
- linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop top remote_addr
输出如下:
如果你想看到4xx或5xx响应和HTTP参考附件,你可以输入以下命令:
- linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop -i 'status >= 400' print request status http_referer
输出如下:
这些只是一些例子。可以在下面找到完整的组合列表。
用法:
ngxtop 选项
ngxtop 信息
选项:
-l , --access-log 要解析的访问日志文件。
-f , --log-format 日志格式,如 log_format 指令中指定的那样。
--no-follow ngxtop 默认行为是忽略日志中的当前行
并且只在新行写入访问日志时注意它们。
使用此标志告诉 ngxtop 处理访问日志的当前内容。
-t , --interval 在跟随模式下运行时报告间隔 [默认值:2.0]
-g , --group-by 按变量分组 [默认:request_path]
-w ,--have 子句 [默认:1]
-o , --order-by 默认查询的输出顺序 [默认:计数]
-n , --limit 限制 top 命令的报告中包含的记录数 [默认值:10]
-a ..., --a ... 将 exp(必须是聚合 exp:sum、avg、min、max 等)添加到输出中
-v, --verbose 更详细的输出
-d, --debug 打印每一行和解析的记录
-h, --help 打印此帮助消息。
--version 打印版本信息。
高级/实验选项:
-c , --config 允许 ngxtop 解析 nginx 配置文件的日志格式和位置。
-i , --filter filter in, 满足给定表达式的记录被处理。
-p , --pre-filter in-filter 表达式以检查预解析阶段。
总结
您已经学习了如何在 Ubuntu(一个操作系统)上为您的 Nginx 服务器安装 ngxtop。请注意,这是用于从日志中搜索特定统计信息的轻量级、快速和干净的基本监控。