码迷,mamicode.com
首页 > 其他好文 > 详细

zabbix监控nginx

时间:2017-06-21 20:03:33      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:监控   nginx   zabbix   

一、修改配置

修改nginx配置文件,在最后加上这条配置,其实php和nginx是配置在一起的,单独拿出来是为了脚本

server {
            listen 127.0.0.1:80;
            server_name 127.0.0.1;
            location /nginx_status {
                stub_status on;
                access_log off;
                allow 127.0.0.1;
                allow 10.1.12.0/24;
                deny all;
            }
    #        location ~ ^/(phpfpm_status)$ {
    #            include fastcgi_params;
    #            fastcgi_pass unix:/tmp/php-cgi.sock;
    #            fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
            }
}

二、重启nginx

# service nginx restart

三、配置监控扩展

被监控主机端,zabbix_agentd.conf文件中添加上这个:

UserParameter=nginx[*],/etc/zabbix/scripts/nginx_status.py $1

四、将脚本放置在/etc/zabbix/scripts/目录下

chmod +x nginx_status.py

五、脚本

#!/usr/bin/env python
#__*__coding:utf8__*__
import urllib2,sys,os
def Nginx_status():
    nginx_stats_dirt = {}
    nginx_url = "http://127.0.0.1/nginx_status"
    req = urllib2.Request(nginx_url)
    response = urllib2.urlopen(req)
    request_list = response.read().split("\n")
    nginx_stats_dirt["active"] = request_list[0].split()[2]
    nginx_stats_dirt["accepts"] = request_list[2].split()[0]
    nginx_stats_dirt["handled"] = request_list[2].split()[1]
    nginx_stats_dirt["requests"] = request_list[2].split()[2]
    nginx_stats_dirt["reading"] = request_list[3].split()[1]
    nginx_stats_dirt["writing"] = request_list[3].split()[3]
    nginx_stats_dirt["waiting"] = request_list[3].split()[5]
    if len(sys.argv) is not 2 or str(sys.argv[1]) not in nginx_stats_dirt.keys():
        print "Usage: nginx_stauts.py $1 {active|accepts|handled|requests|reading|writing|waiting}"
        exit(1)
    else:
        print nginx_stats_dirt[str(sys.argv[1])]
if __name__ == ‘__main__‘:
    try:
        Nginx_status()
    except urllib2.URLError,e:
        print "%s,there may be something wrong with nginx!" %e




本文出自 “LINUX” 博客,请务必保留此出处http://wangpengtai.blog.51cto.com/3882831/1940615

zabbix监控nginx

标签:监控   nginx   zabbix   

原文地址:http://wangpengtai.blog.51cto.com/3882831/1940615

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!