在Linux/Ubuntu上监控Nginx实时指标

监控Web服务器对于了解网站上发生的情况至关重要。最近,我在寻找某种解决方案时,发现了一个名为ngxtop的工具,它可以帮助您监控各种指标,包括以下内容。

在本文中,我将解释如何在Linux和Ubuntu操作系统上安装和使用ngxtop

以前,我使用过GoAccess Log Analyzer,发现ngxtop是一个轻量级且适合监控Nginx Web服务器指标的良好选择。

这假设您已经安装并运行了Nginx。如果没有安装,则可以参考我的installation guide

关于ngxtop的简单介绍

ngxtop是一个基于Python的程序,您可以在Python上安装它。安装完成后,您可以执行ngxtop,并且您会注意到它看起来像Linux上的典型top输出,但其中包含了与Nginx相关的信息。

在CentOS/RHEL上安装ngxtop

首先,您需要安装PIP(Python软件包管理系统)。

执行以下操作…

  • 使用root凭据登录服务器
  • 通过安装以下软件包来启用EPEL软件仓库
yum install epel-release

现在,使用以下命令安装pip

yum install python-pip

最后,使用以下命令安装ngxtop

pip install ngxtop

如果使用的是CentOS/RHEL 8,则可以使用类似以下命令进行安装。

dnf install epel-release python2 python2-pip
pip2 install ngxtop

在Ubuntu上安装ngxtop

使用以下命令安装PIP

apt-get install python-pip

现在使用以下命令安装ngxtop

pip install ngxtop

安装很简单,不是吗?让我们看一些实时指标。

Nginx活动摘要

使用ngxtop命令查看请求计数、请求的URI以及状态码的请求数摘要。

提示:通过查看状态码为404的请求,您可以使用find a broken link

检查顶级客户端的IP

查看向您的Nginx服务器发出大量请求的用户非常方便。

ngxtop top remote_addr

只显示具有404状态码的请求如何?

ngxtop -i 'status >= 404'

它不仅是实时的,而且可以通过解析访问日志进行离线分析。

要分析access.log,您可以使用:

ngxtop –l /path/access.log

另一个例子是解析来自Apache的离线access.log。

ngxtop –f common –l /path/access.log

您可以使用多种组合来过滤出有意义的access.log数据。接下来,您可能想尝试一下Nginx Plus

类似文章