zabbix如何配置nginx监控

发布时间 - 2023-05-12 00:00:00    点击率:

案例:zabbix 配置 nginx 监控

1. 修改配置文件

vim /usr/local/nginx/conf/nginx.conf

 location /nginx_status {
                stub_status;
        }
说明:
	nginx_status	自定义字段,访问地址(例:192.168.169.131/nginx_status)
	stub_status		固定参数
	

# 重启 nginx
./nginx reload

浏览器访问状态说明:
		Active connections  Nginx正处理的活动链接数个数;重要

		server              Nginx启动到现在共处理了多少个连接。

		accepts             Nginx启动到现在共成功创建几次握手。

		handled requests    Nginx总共处理了几次请求。
	
		Reading             Nginx读取到客户端的 Header 信息数。

		Writing             Nginx返回给客户端的 Header 信息数。

		Waiting             Nginx已经处理完正在等候下一次请求指令的驻留链接,开启。

		Keep-alive的情况下,Waiting这个值等于active-(reading + writing)。

		请求丢失数=(握手数-连接数)可以看出,本次状态显示没有丢失请求

2. 编写 nginx 监控脚本

#/bin/bash
#Description:Automated monitoring nginx performance and process nginx_status scripts

NGINX_PORT=80 
NGINX_COMMAND=$1

nginx_ping(){
    /sbin/pidof nginx |wc -l
    }

nginx_active(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Active/ {print $NF}'
    }

nginx_reading(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Reading/ {print $2}'
    }

nginx_writing(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Writing/ {print $4}'
    }

nginx_waiting(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Waiting/ {print $6}'
    }

nginx_accepts(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk 'NR==3 {print $1}'
    }

nginx_handled(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk 'NR==3 {print $2}'
    }

nginx_requests(){
    /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk 'NR==3 {print $3}'
    }

case $NGINX_COMMAND in
    ping)
        nginx_ping
        ;;
    active)
        nginx_active
        ;;
    reading)
        nginx_reading
        ;;
    writing)
        nginx_writing
        ;;
    waiting)
        nginx_waiting
        ;;
    accepts)
        nginx_accepts
        ;;
    handled)
        nginx_handled
        ;;
    requests)
        nginx_requests
        ;;
    *)
        echo $"USAGE:$0 {ping|active|reading|writing|waiting|accepts|handled|requests}"
esac
# 修改文件权限
chmod u+x /etc/zabbix/zabbix_agentd.d/zabbix_nginx.sh

3. 修改 zabbix 配置文件

vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

# 增加
UserParameter=nginx_status[*],/bin/bash /etc/zabbix/zabbix_agentd.d/zabbix_nginx.sh \$1
# 修改完成重启 zabbix-agent
systemctl restart zabbix-agent.service

4. 服务端验证

[root@zabbix ~]# zabbix_get -s 192.168.169.131 -k nginx_status[active]

5. 添加模块

模块名称:Template Nginx Web Status Monitor(自定义)

可见名称:NGINX STATUS MONITOR(自定义)

6. 创建应用集

名称:NGINX_STATUS

7. 创建监控项

名称:Nginx_Status_Ping

键值:nginx_status[ping]

8. 定义触发器

超过50个并发连接就执行报警

nginx 服务down了执行报警

9. 关联主机

将需要监控的主机添加上此模板

10. nginx 模板文件

zbx_export_templates.xml



    4.0
    2025-05-21T12:29:43Z
    
        
            Linux servers
        
    
    
        
    
    
        
            {Template Nginx Web Status Monitor:nginx_status[active].last()}youjiankuohaophpcn50
            0
            
            Excessive number of active links in nginx
            0
            
            
            0
            4
            
            0
            0
            
            
        
        
            {Template Nginx Web Status Monitor:nginx_status[ping].last()}=0
            0
            
            Nginx down on {HOST.NAME}
            0
            
            
            0
            4
            
            0
            0
            
            
        
    
    
        
            Nginx_Status
            900
            200
            0.0000
            100.0000
            1
            1
            0
            1
            0
            0.0000
            0.0000
            0
            0
            0
            0
            
                
                    1
                    0
                    1A7C11
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[accepts]
                    
                
                
                    2
                    0
                    F63100
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[active]
                    
                
                
                    3
                    0
                    2774A4
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[handled]
                    
                
                
                    4
                    0
                    A54F10
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[ping]
                    
                
                
                    5
                    0
                    FC6EA3
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[reading]
                    
                
                
                    6
                    0
                    6C59DC
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[requests]
                    
                
                
                    7
                    0
                    AC8C14
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[waiting]
                    
                
                
                    8
                    0
                    611F27
                    0
                    2
                    0
                    
                        Template Nginx Web Status Monitor
                        nginx_status[writing]
                    
                
            
        
    


# nginx  # xml  # 并发  # zabbix  # 自定义  # 几次  # 重启  # 配置文件  # 客户端  # 可以看出  # 服务端  # 键值  # 多少个  # 连接数 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何用美橙互联一键搭建多站合一网站?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  使用豆包 AI 辅助进行简单网页 HTML 结构设计  如何在Windows环境下新建FTP站点并设置权限?  企业网站制作这些问题要关注  大连网站制作公司哪家好一点,大连买房网站哪个好?  文字头像制作网站推荐软件,醒图能自动配文字吗?  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  高防服务器如何保障网站安全无虞?  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  js代码实现下拉菜单【推荐】  高性能网站服务器部署指南:稳定运行与安全配置优化方案  Python图片处理进阶教程_Pillow滤镜与图像增强  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  如何安全更换建站之星模板并保留数据?  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  网站制作大概多少钱一个,做一个平台网站大概多少钱?  Laravel怎么上传文件_Laravel图片上传及存储配置  Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  Python结构化数据采集_字段抽取解析【教程】  如何彻底删除建站之星生成的Banner?  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  js实现获取鼠标当前的位置  Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  如何在 Pandas 中基于一列条件计算另一列的分组均值  中山网站制作网页,中山新生登记系统登记流程?  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  如何快速搭建个人网站并优化SEO?  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  Laravel如何使用Vite进行前端资源打包?(配置示例)  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  详解vue.js组件化开发实践  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  Python制作简易注册登录系统  郑州企业网站制作公司,郑州招聘网站有哪些?  bootstrap日历插件datetimepicker使用方法  如何在搬瓦工VPS快速搭建网站?  微信h5制作网站有哪些,免费微信H5页面制作工具?  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  实例解析Array和String方法  浅述节点的创建及常见功能的实现  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  利用 Google AI 进行 YouTube 视频 SEO 描述优化  高端智能建站公司优选:品牌定制与SEO优化一站式服务