欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

zabbix自定义监控nginx状态实现过程

程序员文章站 2022-03-01 21:32:45
目录zabbix自定义监控nginx状态1. 开启状态界面2. 写监控脚本3. 配置监控项4. 配置触发器5. 测试zabbix自定义监控nginx状态...

zabbix自定义监控nginx状态

zabbix_server 192.168.200.145
zabbix_agentd ,nginx 192.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 总共处理了多少个请求
reading nginx读取到客户端的header信息数,表示正处于接收请求状态的连接数
writing nginx返回给客户端的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状态实现过程的详细内容,更多关于zabbix自定义监控nginx的资料请关注其它相关文章!