#vim /usr/local/nginx/conf/nginx.conf location /nginx_status { stub_status on; access_log off; allow 127.0.0.1; deny all; } #nginx -s reload
Active connections Nginx正處理的活動連接數個數;重要 server Nginx啓動到如今共處理了多少個鏈接。 accepts Nginx啓動到如今共成功建立幾回握手。 handled requests Nginx總共處理了幾回請求。 Reading Nginx讀取到客戶端的 Header 信息數。 Writing Nginx返回給客戶端的 Header 信息數。 Waiting Nginx已經處理完正在等候下一次請求指令的駐留連接,開啓。 Keep-alive的狀況下,Waiting這個值等於active-(reading + writing)。 請求丟失數=(握手數-鏈接數)能夠看出,本次狀態顯示沒有丟失請求。
# vim /etc/zabbix/zabbix_agentd.d/nginx_monitor.conf UserParameter=nginx_status[*],/bin/bash /etc/zabbix/zabbix_agentd.d/nginx_monitor.sh "$1"
#cd /etc/zabbix/zabbix_agentd.d/ #vim nginx_monitor.sh NGINX_PORT=80 NGINX_COMMAND=$1 nginx_active(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Active/ {print $NF}' } nginx_reading(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Reading/ {print $2}' } nginx_writing(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Writing/ {print $4}' } nginx_waiting(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk '/Waiting/ {print $6}' } nginx_accepts(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk 'NR==3 {print $1}' } nginx_handled(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk 'NR==3 {print $2}' } nginx_requests(){ /usr/bin/curl -s "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" |awk 'NR==3 {print $3}' } case $NGINX_COMMAND in active) nginx_active; ;; reading) nginx_reading; ;; writing) nginx_writing; ;; waiting) nginx_waiting; ;; accepts) nginx_accepts; ;; handled) nginx_handled; ;; requests) nginx_requests; ;; *) echo $"USAGE:$0 {active|reading|writing|waiting|accepts|handled|requests}" esac
chmod +x nginx_monitor.sh
# systemctl restart zabbix-agent
思路:定義application_status模板--->定義應用集nginx_status--->定義監控項---->定義圖形--->定義觸發器---->添加主機或主機關聯這個模板nginx
zabbix_get -s 192.168.1.32 -k nginx_status[active]
nginx_status[active] nginx_status[reading] nginx_status[writing] nginx_status[waiting] nginx_status[accepts] nginx_status[handled] nginx_status[requests]