欢迎光临
我们一直在努力

zabbix 增加nginx_status 状态监控

nginx 新增状态监控,在nginx配置文件中加入locationlocation /status {
stub_status on;
access_log off;
}

增加监控脚本在agent端
#! /bin/bash
# Description:zabbix监控nginx性能以及进程状态
# Note:此脚本需要配置在被监:去!控端,否则ping检测将会得到不符合预期的结果

HOST=”192.168.171.146”
PORT=”80”

# 检测nginx进程是否存在
function ping {
/sbin/pidof nginx | wc -l
}
# 检测nginx性能
function active {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| grep ’Active’ | awk ‘{print $NF}’
}
function reading {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| grep ’Reading’ | awk ‘{print $2}’
}
function writing {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| grep ’Writing’ | awk ‘{print $4}’
}
function waiting {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| grep ’Waiting’ | awk ‘{print $6}’
}
function accepts {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| awk NR==3 | awk ‘{print $1}’
}
function handled {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| awk NR==3 | awk ‘{print $2}’
}
function requests {
/usr/bin/curl ”http://$HOST:$PORT/status/” 2>/dev/null| awk NR==3 | awk ‘{print $3}’
}
# 执行function
$1
远程测试
sh /etc/zabbix/zabbix_agentd.d/ngx_status.sh active
服务端测试
zabbix_get -s 192.168.169.98 -k nginx.status[active]

修改agent配置文件
Timeout =30
UnsafeUserParameters=1
UserParameter=nginx.status[*],/etc/zabbix/zabbix_agentd.d/ngx_status.sh $1
重启客户端service zabbix-agent restart

zabbix新增监控项:

增加触发器和图形


赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。