zabbix监控nginx进程
Posted 夜雨-寄情于曲
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix监控nginx进程相关的知识,希望对你有一定的参考价值。
确认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进程的主要内容,如果未能解决你的问题,请参考以下文章