开发者社区> 余二五> 正文

zabbix监控nginx

简介:
+关注继续查看

一、修改配置

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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;
                deny all;
            }
    #        location ~ ^/(phpfpm_status)$ {
    #            include fastcgi_params;
    #            fastcgi_pass 127.0.0.1:9000;
    #            fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
    #        }
}

二、重启nginx

1
# service nginx restart

三、配置监控扩展

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

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

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

1
chmod +x nginx_status.py

五、脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/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









本文转自 wangpengtai  51CTO博客,原文链接:http://blog.51cto.com/wangpengtai/1940615,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ZABBIX监控容器内的MySQL数据
ZABBIX监控容器内的MySQL数据
66 0
Zabbix与乐维监控对比分析(八)——其他功能篇
本篇是Zabbix与乐维监控对比分析专题系列文章的第八篇,也是最后一篇,包括二者知识库、CMDB系统集成与ITSM系统集成等功能的对比分析。
28 0
监控神器Zabbix部署
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。 zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。 zabbix由2部分构成,zabbix server与可选组件zabbix agent。 zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Ubuntu,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
78 0
Zabbix与乐维监控对比分析(七)——网络功能篇
本篇是Zabbix与乐维监控对比专题系列文章的第七篇——网络功能篇,具体包括IP地址管理、网络端口映射发现、网络配置备份、专线监控等功能的对比分析
72 0
Zabbix与乐维监控对比分析(六)——图形图表篇
本篇是Zabbix与乐维监控对比分析专题系列文章的第六篇——图形图表篇,包括二者在模板图形及模板表格等功能的对比分析。
49 0
Zabbix与乐维监控对比分析(五)——可视化篇
前面我们详细介绍了Zabbix与乐维监控的架构与性能、Agent管理、自动发现、权限管理、对象管理、告警管理方面的对比分析,相信大家对二者的对比分析有了相对深入的了解,接下来我们将对二者的可视化功能进行对比分析。可视化是当代IT监控的一个创举,让IT监控很大程度摆脱枯燥烦杂的数据,使得监控过程变得更直观。
65 0
不逊色Zabbix的开源监控LibreNMS:全功能网络监控
不逊色Zabbix的开源监控LibreNMS:全功能网络监控
227 0
Zabbix与乐维监控对比分析(四)——告警管理篇
告警管理是所有IT监控平台最重磅的功能之一,也是评判一个监控平台好坏的最重要指标之一。告警管理篇是Zabbix与乐维监控对比分析专题系列文章的第四篇,主要包括告警管理、告警中心、告警收敛、告警通知、日报周报等内容。
65 0
Zabbix与乐维监控对比分析(三)——对象管理篇
本篇是Zabbix对比乐维监控专题系列文章的第三篇——对象管理篇,将从对象分类、添加/修改对象及脚本下发等方面对二者进行对比分析。
38 0
10分钟帮你搞定Zabbix监控平台告警推送到钉钉群
10分钟帮你搞定Zabbix监控平台告警推送到钉钉群
102 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
《Zabbix 监控常用手册》
立即下载
《Nginx 代理系统常用手册》
立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手
立即下载