zabbix 增長nginx_status 狀態監控

nginx 新增狀態監控,在nginx配置文件中加入locationlocation /status {
stub_status on;
access_log off;
}

增長監控腳本在agent端
#! /bin/bash
# Description:zabbix監控nginx性能以及進程狀態
# Note:此腳本須要配置在被監:去!控端,不然ping檢測將會獲得不符合預期的結果nginx

HOST="192.168.171.146"
PORT="80"bash

# 檢測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]app

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


zabbix新增監控項:ide

image.png

image.png

增長觸發器和圖形性能

image.png

相關文章
相關標籤/搜索