zabbix自定义key,监控nginx状态

zabbix客户端配置文件/etc/zabbix_agentd.conf

UserParameter=memory.free,cat /proc/meminfo | awk '/^MemFree:/{print $2}'
UserParameter=memory.total,cat /proc/meminfo | awk '/^MemTotal:/{print $2}'
#手动获取
zabbix-get -s 192.168.0.150 -k "memory.free"
zabbix_get -s 192.168.0.150 -k 'memory.total'
UserParameter=memory.usage[*],/bin/cat /proc/meminfo | awk '/^$1:/{print $$2}'
zabbix_get -s 192.168.0.150 -k 'memory.usage[MemFree]'
[#这里的参数是cat /proc/meminfo 看到的#]

zabbix监控nginx连接数

yum install nginx

启用nginx状态连接数

location /status {
        stub_status on;
        access_log on;
        allow 192.168.0.0/24
        deny all;
    }
因实验80端口和httpd冲突端口nginx改为8080
获取状态信息

[root@localhost conf.d]# curl http://192.168.0.150:8080/status
Active connections: 3
server accepts handled requests
 3 3 7
Reading: 0 Writing: 1 Waiting: 2
获取活动连接数

[root@localhost conf.d]# curl -s "http://192.168.0.150:8080/status" |awk '/^Active/ {print $NF}'

写成脚本用来掉

UserParameter=Nginx.Active[*],/usr/bin/curl -s  "http://$1:$2/status" | awk '/^Active/ {print $NF}'  #活动连接数
UserParameter=Nginx.reading[*],/usr/bin/curl -s  "http://$1:$2/status" | grep 'Reading' | awk '{print $$2}'#正在进行的请求数
UserParameter=Nginx.writing[*],/usr/bin/curl -s  "http://$1:$2/status" | grep 'Writing' |   awk '{print $$4}'#正在处理或者已经返回给用户的信息
UserParameter=Nginx.waiting[*],/usr/bin/curl -s  "http://$1:$2/status" | grep 'Waiting' |  awk '{print $$6}' #活动连接数
UserParameter=Nginx.accepted[*],/usr/bin/curl -s "http://$1:$2/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$1}'  #已接受过的连接数
UserParameter=Nginx.handled[*],/usr/bin/curl  -s "http://$1:$2/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$2}'   #已处理过的连接数
UserParameter=Nginx.requests[*]/usr/bin/curl  -s "http://$1:$2/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$3}'   #处理的请求数
#测试
[root@localhost conf.d]# zabbix_get -s 192.168.0.150 -k "Nginx.accepted[192.168.0.150,8080]"
13
[root@localhost conf.d]# zabbix_get -s 192.168.0.150 -k "Nginx.Active[192.168.0.150,8080]"
1
。。。以此类推

Active connections:活动连接数

server accepts handled requests下的三个数:

accepts:已接受过的连接数

handled:已处理过的连接数

requests:处理的请求数

(连接和请求的区别:当开启keepalive之后一个连接可发起多个请求)

Reading:正在接进的请求数

Writing:正在处理或已经返回给用户信息

Waiting:活动连接数(Writing+Reading)

我自己添加了3个item看下生成的图像

122027_pWes_1769595.png


转载于:https://my.oschina.net/kcw/blog/368500

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值