如何从命令行实时监控Nginx Web服务器

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 一旦Nginx Web服务器在生产环境下搭建并运行起来,你就希望能够实时监测其活动。实际上,普通的网络监控软件都可以提供支持实时监控Nginx的功能,比如Nagios、Zabbix和Munin。

一旦Nginx Web服务器在生产环境下搭建并运行起来,你就希望能够实时监测其活动。实际上,普通的网络监控软件都可以提供支持实时监控Nginx的功能,比如Nagios、Zabbix和Munin。

不过,如果你不需要这类工具所提供的综合报告功能或长期统计数字,只想快速、简便地监控对Nginx Web服务器提出的请求,那么我会建议使用一款名为ngxtop的命令行工具

你一眼就会发现,无论名称还是界面,ngxtop的灵感均源自大名鼎鼎的top命令。ngxtop的功能就是,分析Nginx访问日志文件(以及其他日志文件,比如Apache2日志),并通过类似top的界面,实时显示分析后所得的结果。你可能吹嘘自己的综合监控工具拥有各种各样的所需功能,但说到简洁性,肯定比不过ngxtop,而简洁性是不可忽视的一大优点。

我在本教程中将介绍如何借助ngxtop,实时监控Nginx Web服务器。

将ngxtop安装在Linux上

首先,将pip安装在你的Linux系统上,这是ngxtop的一个前提条件。

然后安装ngxtop,如下所示。

 
 
  1. $ sudo pip install ngxtop 

ngxtop的使用方法

ngxtop的基本使用方法如下:

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

下面是一些常用选项。

  • -l <file>:访问日志文件(Nginx或Apache2)的完整路径
  • -f <format>:访问日志的格式
  • --no-follow:处理当前的日志文件快照,而不是实时写入到日志文件的新行
  • -t <seconds>:更新间隔时间
  • -n <number>:所显示的行数
  • -o <var>:排序标准(默认标准:数量)
  • -a <exp> ..., --a <exp> ...::将表达式(必须是聚合表达式:sum、avg、min和max等)添加到输出
  • -v:详细输出
  • -i <filter-expression>:只处理与过滤器匹配的记录

下面是一些内置变量(用上面的<var>来表示)。它们的含义不言自明。

  • body_bytes_send
  • http_referer
  • http_user_agent
  • remote_addr
  • remote_user
  • request
  • status
  • time_local

使用ngxtop监控Nginx

默认情况下,ngxtop会设法从其配置文件(/etc/nginx/nginx.conf)查明Nginx访问日志的位置。因而,想监控Nginx,只要运行这个命令:

 
 
  1. $ ngxtop 

它会显示由Nginx处理的10个请求,按请求数量排序。

想显示前20个最频繁的请求,只要运行这个命令:

 
 
  1. $ ngxtop -n 20 

想获得关于Nginx的信息(包括可用变量信息),只要运行这个命令:

 
 
  1. $ ngxtop info 

如果你愿意,也可以定制所要显示的变量。为此,只要列出你感兴趣的变量。"print"命令会显示一个个请求。

 
 
  1. $ ngxtop print request http_user_agent remote_addr 

想显示客户机的最常出现的IP地址,只要运行这个命令:

 
 
  1. $ ngxtop top remote_addr 

想显示状态代码是404的请求,只要运行这个命令:

 
 
  1. $ ngxtop -i 'status == 404' print request status 

除了Nginx外,ngxtop还能够处理其他日志文件,比如Apache访问日志。想监控Apache Web服务器,只要使用这个命令:

 
 
  1. $ tail -f /var/log/apache2/access.log | ngxtop -f common 
相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
目录
相关文章
|
2月前
|
缓存 负载均衡 JavaScript
Nginx:高性能Web服务器与反向代理利器
Nginx:高性能Web服务器与反向代理利器
230 110
|
2月前
|
缓存 负载均衡 前端开发
Nginx:高性能的Web服务器与反向代理利器
Nginx:高性能的Web服务器与反向代理利器
203 99
|
2月前
|
缓存 负载均衡 前端开发
Nginx:高性能Web服务器的核心引擎
Nginx:高性能Web服务器的核心引擎
116 47
|
1月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
199 18
|
1月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
208 17
|
1月前
|
存储 缓存 数据挖掘
阿里云目前最便宜云服务器介绍:38元、99元、199元性能,选购攻略参考
轻量应用服务器2核2G峰值200M带宽38元1年;云服务器经济型e实例2核2G3M带宽99元1年;云服务器通用算力型u1实例2核4G5M带宽199元1年。对于还未使用过阿里云服务器的用户来说,大家也不免有些疑虑,这些云服务器性能究竟如何?它们适用于哪些场景?能否满足自己的使用需求呢?接下来,本文将为您全方位介绍这几款云服务器,以供您了解及选择参考。
|
2月前
|
网络安全 云计算
如何设置阿里云轻量应用服务器镜像?
本文介绍了在阿里云轻量应用服务器上创建与配置镜像的详细步骤。镜像是一种特殊的文件系统映射,可用于快速克隆服务器配置。内容涵盖准备条件、登录控制台、创建实例、生成镜像、下载与设置镜像,以及如何使用镜像启动新实例。适合希望提升服务器部署效率的用户参考。
|
1月前
|
弹性计算 Devops Shell
用阿里云 DevOps Flow 实现 ECS 部署自动化:从准备到落地的完整指南
阿里云 DevOps Flow 是一款助力开发者实现自动化部署的高效工具,支持代码流水线构建、测试与部署至ECS实例,显著提升交付效率与稳定性。本文详解如何通过 Flow 自动部署 Bash 脚本至 ECS,涵盖环境准备、流水线搭建、源码接入、部署流程设计及结果验证,助你快速上手云上自动化运维。
149 0
|
24天前
|
开发框架 JavaScript .NET
阿里云轻量应用服务器2核2G38元1年起怎么样?性能、应用场景与购买价值参考
目前在阿里云的活动中,抢购价为38元1年的轻量应用服务器受到了众多个人和中小企业用户的高度关注,该款轻量应用服务器置为2核CPU、2G内存,峰值带宽达200M。那么,此款轻量应用服务器的具体性能如何?适用于哪些应用场景?是否具备较高的购买价值?本文将针对这款特惠轻量应用服务器展开全面且深入的测评与介绍。
340 30
阿里云轻量应用服务器2核2G38元1年起怎么样?性能、应用场景与购买价值参考
|
14天前
|
自然语言处理 监控 数据可视化
如何建设网站:使用阿里云的服务器网站建设5大步骤
企业用阿里云服务器建网站,无需复杂技术,按五步骤即可。先规划需求明确网站功能;再选入门级服务器并初始化;接着部署 PageAdmin CMS,可视化操作易上手;然后选模板填内容搭建网站;最后测试适配与稳定性,绑定域名备案后上线。PageAdmin 还方便后期维护调整。
208 10

热门文章

最新文章