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. Amazon.com Seller Distributed Inventory Placement Inventory Placement Service

    Greetings, Thank you for writing to us. I understand that you would like to send inventory to our wa ...

  2. [linux] centos搭建openvpn服务,脚本颁发/吊销证书 (转载+原创)

    搭建过程转载:http://yestreenstars.blog.51cto.com/1836303/1429537 环境说明:服务端:CentOS 6.5_X64客户端:Windows 7 服务端配 ...

  3. netty初认识

    Netty是什么? 本质:JBoss做的一个Jar包 目的:快速开发高性能.高可靠性的网络服务器和客户端程序 优点:提供异步的.事件驱动的网络应用程序框架和工具 通俗的说:一个好使的处理Socket的 ...

  4. 7. I/O复用

    一.I/O复用的特点 能同时监听多个文件描述符 自身是阻塞的 当多个文件描述符同时就绪时,如果不采取额外的措施,程序就只能按顺序依次处理其中的每一个文件描述符 由于其第三个特点,所以服务器程序看起来仍 ...

  5. Longge's problem(欧拉函数应用)

    Description Longge is good at mathematics and he likes to think about hard mathematical problems whi ...

  6. Beautiful Year(拆分四位数)

    Description It seems like the year of 2013 came only yesterday. Do you know a curious fact? The year ...

  7. 《Linux内核与分析》第四周

    20135130王川东 一.用户态.内核态和中断处理过程 CPU的几种不同的执行级别: 高执行级别下,代码可以执行特权指令,访问任意的物理地址,这种执行级别对应内核态: 低级别执行状态下,代码的掌握范 ...

  8. 软件工程 speedsnail 第二次冲刺10

    20150527 完成任务:蜗牛碰到线后速度方向的调整:已经基本实现多方向的反射: 遇到问题: 问题1 反射角的问题 解决1 利用tan()三角函数 明日任务: 大总结.找到新问题.布置下一次冲刺方案

  9. css全局样式基础代码

    body{ font-size:12px; font-family:"宋体",Arial, Helvetica, sans-serif;color:#363636;backgrou ...

  10. Alpha事后诸葛亮(团队)

    设想和目标 1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件要解决用手机使没有指纹验证硬件的电脑可以利用指纹进行文件的加密.定义的很清楚.我们针对的是 ...