zabbix_get超时Linux,使用zabbix_get收集Nginx监控状态数据

添加Nginx status

vim /usr/local/nginx/conf/nginx.conf

server {

listen 80;

server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

location /status {

stub_status on; ##打开nginx状态检测模块

root html;

index index.html index.htm;

}

编辑完成后,重启nginx服务,使用网页浏览http://ip/status,显示如下图则模块已打开

4fc266f210f100967ac0692c33b29432.png

Zabbix客户端配置

在客户端编写脚本:nginx_status.sh,并将其放至/etc/zabbix/scripts目录下,给予执行权限脚本内容如下:

#!/bin/bash

HOST=172.20.2.10

PORT=80

function active {

curl -s "http://$HOST:$PORT/nginx_status" | grep 'Active' | awk '{print $NF}'

}

function reading {

curl -s "http://$HOST:$PORT/nginx_status" | grep 'Reading' | awk '{print $2}'

}

function writing {

curl -s "http://$HOST:$PORT/nginx_status" | grep 'Writing' | awk '{print $4}'

}

function waiting {

curl -s "http://$HOST:$PORT/nginx_status" | grep 'Waiting' | awk '{print $6}'

}

function accepts {

curl -s "http://$HOST:$PORT/nginx_status" | awk NR==3 | awk '{print $1}'

}

function handled {

curl -s "http://$HOST:$PORT/nginx_status" | awk NR==3 | awk '{print $2}'

}

function requests {

curl -s "http://$HOST:$PORT/nginx_status" | awk NR==3 | awk '{print $3}'

}

$1

接下来,将自定义的UserParameter加入配置文件,然后重启agent,如下:

[root@agent scripts]# cat /etc/zabbix/zabbix_agentd.conf  | grep nginx

UserParameter=nginx.status[*],/etc/zabbix/scripts/nginx_status.sh $1

Zabbix_get获取数据

此步骤可以跳过,但最好使用监控端进行测试,因为通过此命令可以检查配置是否正确

zabbix_get -s 172.20.2.10 -k 'nginx.status[accepts]'

41

Zabbix web配置

导入Template App Nginx模板:

在web端,点击  组态–模板–汇入

8c9582c45b5e95dac60a828de97c96c3.png

选择解压出来的文件,点击汇入,即可导入nginx检测模板,然后将模板加入需要检测的主机即可。

2cd968ecb18183b25acda90b64f85319.png

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值