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进程的主要内容,如果未能解决你的问题,请参考以下文章

zabbix监控 nginx 进程

zabbix监控nginx状态端口不监听触发报警

zabbix监控nginx状态端口不监听触发报警

运维篇-zabbix监控基础

Eg挨蒙—Zabbix监控进程占cpu和内存大小及批量监控端口

zabbix监控php-status和进程资源使用率