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新增監控項:

image.png

image.png

增加觸發器和圖形

image.png



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章