1.在agent端查看配置:
nginx -V //查看编辑时是否加入状态监控模块:--with-http_stub_status_module --with-http_gzip_static_module
 
2.vim /etc/nginx/nginx.conf
location ~ /nginx_status { //在server{ }中加入
stub_status on;
access_log off;
allow 127.0.0.1;
allow 192.168.0.127; //允许agent端IP访问该状态页面
deny all;
}
 
3.测试状态页面的访问:
curl http://127.0.0.1/nginx_status
 
Active connections: 1 server accepts handled requests 1 1 1 Reading: 0 Writing: 1 Waiting: 0
## Active connections: 对后端发起的活动连接数
## Server accepts handled requests: Nginx 总共处理了 1 个连接,成功创建了 1 次握手(没有失败次数),总共处理了 1 个请求
## Reading: Nginx 读取到客户端的 Header 信息数
## Writing: Nginx 返回给客户端的 Header 信息数
## Waiting: 开启 keep-alive 的情况下,这个值等于 active - ( reading + writing ), 意思是 Nginx 已经处理完成,正在等待下一次请求指令的驻留连接
## 在访问效率很高,请求很快被处理完毕的情况下,Waiting 数比较多是正常的。如果 reading + writing 数较多,则说明并发访问量很大,正在处理过程中
 
4.编写脚本获取上面的key值:
 
cat > /etc/zabbix/nginx_status.sh << end //存储路径随意
#!/bin/bash
case $1 in
active)
curl -s http://127.0.0.1/nginx_status | awk '/Active/ {print $3}' ;;
accepts)
curl -s http://127.0.0.1/nginx_status | awk 'NR==3 {print $1}' ;;
handled)
curl -s http://127.0.0.1/nginx_status | awk 'NR==3 {print $2}' ;;
requests)
curl -s http://127.0.0.1/nginx_status | awk 'NR==3 {print $3}' ;;
reading)
curl -s http://127.0.0.1/nginx_status | awk '/Reading/ {print $2}' ;;
writing)
curl -s http://127.0.0.1/nginx_status | awk '/Writing/ {print $4}' ;;
waiting)
curl -s http://127.0.0.1/nginx_status | awk '/Waiting/ {print $6}' ;;
*)
echo "Usage: $0 { active | accepts | handled | requests | reading | writing | waiting }" ;;
esac
end
 
//-s:静默模式,如果不加 -s 参数,则获取到的结果是不正确的。
chmod u+x /etc/zabbix/nginx_status.sh
chown zabbix. /etc/zabbix/nginx_status.sh
 
5.添加自定义key文件:
 
cat > /etc/zabbix_agentd.conf.d/nginx_status.conf << end //文件名任意
## Nginx_status
UserParameter=nginx.active,/etc/zabbix/nginx_status.sh active
UserParameter=nginx.accepts,/etc/zabbix/nginx_status.sh accepts
UserParameter=nginx.handled,/etc/zabbix/nginx_status.sh handled
UserParameter=nginx.requests,/etc/zabbix/nginx_status.sh requests
UserParameter=nginx.reading,/etc/zabbix/nginx_status.sh reading
UserParameter=nginx.writing,/etc/zabbix/nginx_status.sh writing
UserParameter=nginx.waiting,/etc/zabbix/nginx_status.sh waiting
end
 
vim /etc/zabbix/zabbix_agentd.conf
Include=/etc/zabbix_agentd.conf.d //取消注释
UnsafeUserParameters=1 //允许使用自定义参数
保存退出
 
systemctl restart zabbix-agent
 
6.在zbx服务端测试下:
zabbix_get -s 192.168.0.127 -k nginx.active
1 //有数字表示已经获取成功
 
7、Zabbix监控Nginx状态:
1)创建模板
 
配置——》模板——》创建模板
模板名称:Template App Nginx Service
所在群组:Templates
 
2)创建应用集
 
配置——》模板——》点击NGINX模板的应用集——》创建应用集
名称:Nginx status
 
 
 
 
3)创建监控项
 
 
名称:nginx.accepts
类型:Zabbix客户端
键值:nginx.accepts //要手动输入
信息类型:数字
数据类型:十进制
应用集:Nginx status
 
以此类推分别定义剩下的全部key:
 
 
 
8.将模板应用到主机:
 
9.将监控项绘图:
配置——》模板——》图形——》创建图形
 
 
 
完成。效果图:
 

ZABBIX 3.0 配置监控NGINX性能【OK】的更多相关文章

  1. ZABBIX 3.0 配置监控MYSQL性能【OK】

    Zabbix3.0自带了MySQL插件来监控mysql数据库的模板,只需要配置好agent客户端,然后在web端给主机增加模板就行了. 参考:http://www.cnblogs.com/keving ...

  2. CentOS 6.5 zabbix 3.0.4 监控MySQL性能

    安装mysql [root@test3 /]# yum -y install mysql mysql-server 初始化数据库 [root@test3 /]# /etc/init.d/mysqld ...

  3. Zabbix监控nginx性能的另外一种方式

    Zabbix监控nginx性能的另外一种方式 nginx和php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有用,为了后续的zabbix监控,我们需要先启用nginx ...

  4. Zabbix监控Nginx性能状态

    Nginx在生产环境中的应用越来越广泛,所以需要对nginx的性能状态做一些监控,从而发现故障隐患,Ngnx的监控指标可分为:基本活动指标,错误指标,性能指标 监控Nginx思路: 1)首先,要想监控 ...

  5. Zabbix监控nginx性能

    编辑nginx的配置文件nging #配置ngx_status location /nginx_status{ stub_status on; access_log off; } #重启nginx # ...

  6. zabbix4.2配置监控nginx服务

    1.监控原理 通过status模块监控(--with-http_stub_status_module)  2.修改nginx配置(/etc/nginx/conf.d/default.conf) 在被监 ...

  7. CentOS 6.4编译安装和部署Zabbix 2.0版本监控(中文)

    [一].zabbix简介 zabbix是一个基于web界面的提供分布式系统监视以及网络监视功能的企业级开元解决方案 zabbix由2部分构成,zabbix_server和可选组件zabbix_agen ...

  8. 转:zabbix 2.0.6监控cisco交换机 2950 2960s 3560G

    转自: http://blog.chinaunix.net/uid-24250828-id-3806551.html 想在zabbix 上监控交换机端口的流量,找了两天的模板,包括官方的和网友写的.在 ...

  9. Zabbix 3.0 部署监控 [二]

    一.添加监控主机及设置   1.创建主机 Agent可以干一些SNMP无法干的事情,例如自定义监控项 snmp相关文章:http://www.abcdocker.com/abcdocker/1376  ...

随机推荐

  1. 5.openldap设置用户本身修改密码

    1. 修改slapd.conf文件 #vim /etc/openldap/slapd.conf 修改下如下内容 access to dn.subtree="ou=People,dc=bawo ...

  2. dcom初步窥探一

    一.问题带入: 从delphi 5开始,有许多人都面临过这样的问题:com应用开发出来并且在本机上运行一切正常,但是一旦分发出去实施远程访问时,就无法正常运行了.我自己有段时间在看到“拒绝访问”错误提 ...

  3. [转]Android试验:如果View的ID相同会出现什么效果?

    1.实验:通过布局编辑器强行指定两个button id相同,然后在代码中通过findViewById()获得句柄后修改其文本.  实验结果:只有一个button的文本变化了,另一个不受影响.  2.实 ...

  4. HDU 5655 CA Loves Stick 水题

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5656 CA Loves Stick Accepts: 381   Submissions: 3204 ...

  5. lintcode-392-打劫房屋

    392-打劫房屋 假设你是一个专业的窃贼,准备沿着一条街打劫房屋.每个房子都存放着特定金额的钱.你面临的唯一约束条件是:相邻的房子装着相互联系的防盗系统,且 当相邻的两个房子同一天被打劫时,该系统会自 ...

  6. C++ Primer Plus学习:第八章

    C++入门第八章:函数探幽 本章将介绍C++语言区别于C语言的新特性.包括内联函数.按引用传递变量.默认的参数值.函数重载以及函数模板. 1 C++内联函数 内联函数是C++为提高程序运行速度所做的一 ...

  7. 按照事务类型分析 DB2 事物的性能

    概述 事务是数据库系统中的核心概念之一.作为数据库系统的逻辑工作单元(Unit of Work),事务必须具有四个属性,即原子性.一致性.隔离性和持久性(ACID).数据库系统往往通过锁机制保证事务的 ...

  8. 小程序 坐标算距离 (copy)

      var EARTH_RADIUS = 6378137.0;    //单位M    var PI = Math.PI;        function getRad(d){        retu ...

  9. vue+postcss报错: variable '--primary-color' is undefined and used without a fallback

    之前vue-cli3引入postcss的配置: https://www.cnblogs.com/XHappyness/p/7676680.html 发现这么一个问题,我再全局global.css中定义 ...

  10. mysql有索引和无索引的查询速度对比

    演示100万级数据有索引和无索引的情况下的查找速度: