< 返回技术文档列表

怎么实现zabbix自定义监控nginx状态

发布时间:2021-11-07 01:17:18⊙投诉举报

这篇文章主要介绍“怎么实现zabbix自定义监控nginx状态”,在日常操作中,相信很多人在怎么实现zabbix自定义监控nginx状态问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么实现zabbix自定义监控nginx状态”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

zabbix自定义监控nginx状态

zabbix_server192.168.200.145
zabbix_agentd ,nginx192.168.200.146

1. 开启状态界面

开启status:

[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
location /status {
     stub_status on;
     allow 192.168.200.146;
     allow 192.168.200.145
     deny all;
}
[root@localhost ~]# nginx -s reload

怎么实现zabbix自定义监控nginx状态

状态页面信息详解:

状态码表示的意义
Active connections 2当前所有处于打开状态的连接
accepts总共处理了多少个连接
handled成功创建多少握手
requests总共处理了多少个请求
Readingnginx读取到客户端的Header信息数,表示正处于接收请求状态的连接数
Writingnginx返回给客户端的Header信息数,表示请求已经接收完成,且正处于处理请求或发送响应的过程中的连接数
Waiting开启keep-alive的情况下,这个值等于active - (reading + writing),意思就是Nginx已处理完正在等候下一次请求指令的驻留连接

2. 写监控脚本

[root@localhost scripts]# vim check_status.sh
#! /bin/bash
ip=$(ip a | grep 'inet ' | grep -v '127.0.0.1' | awk -F'[ /]+' '{print $3}')
case $1 in
    "Reading")
    curl -s http://$ip | awk 'NR==4 {print $2}';;
    "Writing")
    curl -s http://$ip | awk 'NR==4 {print $4}';;
    "Waiting")
    curl -s http://$ip | awk 'NR==4 {print $6}'
esac

//添加配置文件
[root@localhost scripts]# vim /usr/local/etc/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=check_status[*],/bin/bash /scripts/check_Reading.sh $1
[root@localhost scripts]# pkill zabbix_agentd 
[root@localhost scripts]# zabbix_agentd 

//测试
[root@zabbix ~]# zabbix_get -s 192.168.200.146 -k check_status Waiting
1

3. 配置监控项

怎么实现zabbix自定义监控nginx状态

怎么实现zabbix自定义监控nginx状态

怎么实现zabbix自定义监控nginx状态

4. 配置触发器

怎么实现zabbix自定义监控nginx状态

怎么实现zabbix自定义监控nginx状态

怎么实现zabbix自定义监控nginx状态

5. 测试

[root@localhost scripts]# ab -n 1500000 http://192.168.200.146/status

怎么实现zabbix自定义监控nginx状态

到此,关于“怎么实现zabbix自定义监控nginx状态”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注血鸟云网站,小编会继续努力为大家带来更多实用的文章!


/template/Home/Zkeys/PC/Static