1. 程式人生 > >zabbix監控nginx進程

zabbix監控nginx進程

模塊 null allow 安裝模塊 log host image 搜索 not

確認nginx有沒有安裝模塊

然後在主站點下添加(二級站點)

location /NginxStatus {
        stub_status on;
        access_log off;
        allow 127.0.0.1;
        deny all;
    }

技術分享圖片

其實就是根據上圖,得到以上數據,寫腳本對其進程監控!!

根據站點的命令寫成監控腳本(可以直接復制以下代碼)

#!/bin/bash
# Description:zabbix監控nginx性能以及進程狀態
# Note:此腳本需要配置在被監控端,否則ping檢測將會得到不符合預期的結果
HOST="
127.0.0.1" PORT="80" # 檢測nginx進程是否存在 case $1 in active) /usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| grep Active | awk {print $NF} ;; reading) /usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| grep Reading | awk {print $2} ;; writing)
/usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| grep Writing | awk {print $4} ;; waiting) /usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| grep Waiting | awk {print $6} ;; accepts) /usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| awk NR==3
| awk {print $1} ;; handled) /usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| awk NR==3 | awk {print $2} ;; requests) /usr/bin/curl "http://$HOST:$PORT/NginxStatus/" 2>/dev/null| awk NR==3 | awk {print $3} ;; *) echo "只能輸入nginx進程的狀態碼" esac

後面就是監控腳本的問題了。監控腳本過程省略,不會的網上搜索一下。。。。

zabbix監控nginx進程