zabbix通过api批量添加web监控

zabbix 添加web监控始终是大问题,不能自动发现只能手动添加

写了个py脚本

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
import urllib2
import sys
class zabbixtools:
    def __init__(self):
        self.url = "Zabbixserver"
        self.header = {"Content-Type": "application/json"}
        self.authID = self.user_login()
    def user_login(self):
        data = json.dumps(
                {   
                    "jsonrpc": "2.0",
                    "method": "user.login",
                    "params": { 
                        "user": "USER",
                        "password": "PASSWORD"
                        },
                    "id": 0
                    })
        request = urllib2.Request(self.url,data)
        for key in self.header:
            request.add_header(key,self.header[key])
        try:
            result = urllib2.urlopen(request)
        except URLError as e:
            print "Auth Failed, Please Check Your Name And Password:",e.code
        else:
            response = json.loads(result.read())
            result.close()
            authID = response[‘result‘]
            return authID
    def get_data(self,data,hostip=""):
        request = urllib2.Request(self.url,data)
        for key in self.header:
            request.add_header(key,self.header[key])
        try:
            result = urllib2.urlopen(request)
        except URLError as e:
            if hasattr(e, ‘reason‘):
                print ‘We failed to reach a server.‘
                print ‘Reason: ‘, e.reason
            elif hasattr(e, ‘code‘):
                print ‘The server could not fulfill the request.‘
                print ‘Error code: ‘, e.code
            return 0
        else:
            response = json.loads(result.read())
            result.close()
            return response
    def host_create(self):
        data = json.dumps(
                    {
                        "jsonrpc": "2.0",
                        "method": "httptest.create",
                        "params": {
                            "hostid": "10788",
                            "name": "Homepage",
                            "steps": [
                                {
                                    "name": "1",
                                    "url": "http://mycompany.com",
                                    "no": 1
                                }
                            ]
                    },
                        "auth": self.authID,
                        "id": 1,
                        })
        res = self.get_data(data)
        print res

def main():
    test = zabbixtools()
    test.host_create()
if __name__ == "__main__":
    main()
时间: 2024-10-08 02:18:35

zabbix通过api批量添加web监控的相关文章

原创:用zabbix api批量添加web监控

代码如下,进攻大家参考,转载的话说明来源 前面5个变量自行补齐, #!/usr/local/python3.51/bin/python3 # Author:         [email protected] # Mail:           [email protected] from pyzabbix import ZabbixAPI import sys from re import compile,IGNORECASE ZABBIX_SERVER = "" USER = &q

zabbix利用api批量添加item,并且批量配置添加graph

关于zabbix的API见,zabbixAPI 1item批量添加 我是根据我这边的具体情况来做的,本来想在模板里面添加item,但是看了看API不支持,只是支持在host里面添加,所以我先在一个host里面添加,然后在将item全部移动到模板里. 具体步骤就不说了,直接上代码: 为了快速完成,代码写的有点乱,也没怎么处理异常,算是第一版吧,有时间在优化  1 #!/usr/bin/env python 2 #-*- coding: utf-8 -*- 3 4 import json 5 imp

深入浅出Zabbix 3.0 -- 第十章 Web 监控

第十章 Web 监控 Web monitoring是用来监控Web站点多方面的可用性,可以监控Web站点的下载速度.返回码和响应时间.Zabbix能够检测HTML中包含的预先定义的字符串,也可以模拟登录网站和鼠标的动作,对特定的结果进行比较,例如特定字符串.返回码等,从而判断站点服务的可用性.Zabbix支持HTTP和HTTPS协议,并在完成每一步模拟访问时会对cookie进行保存. 在Zabbix中设置Web监控时,需要先定义web scenarios(场景),一个webscenarios是由

zabbix详解:(二)添加被监控机器

通过上一篇的学习,看这一篇文章的应该是已经安装好zabbix的了,然而zabbix装好了并不代表就能用,因为他的目的是监控服务器,刚刚安装完也就只能监控zabbix_server自己,显然是要添加被监控机才能叫真正能使用,而zabbix本身虽然自带监控模板,但是有些时候还是不太适用,例如系统的不一样,命令的不一样等等,那怎么办呢,这个时候就需要自己添加监控项目了. 添加被监控机器: 来看看怎么添加被监控机器,只有两步, 第一步,被监控机要装上zabbix_agent,系统不同,就有不同zabbi

zabbix批量添加主机监控-zabbix api调用

使用python调用zabbix api #!/usr/bin/env python # Version = 3.6.1 # __auth__ = 'warren' import json from urllib import request, parse ZABBIX_URL = 'http://192.168.22.22/zabbix' ZABBIX_USERNAME = "Admin" ZABBIX_PASSWORD = "123456" #以列表形式定义要添

zabbix监控web接口和添加web触发器

系统运维工程师 李超 以监控百度接口为例子:www.baidu.com1: 打开2: 过滤ss0.bdstatic.com3: 选择两个url进行监控https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/mancard/css/card_min_dee38e45.csshttps://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo_top_ca79a146.png4: 添加主机4.1

zabbix批量添加主机

zabbix通过excel批量添加主机 本次批量添加针对监控**网络设备**,监控介质通过snmp方式. 不需要再一次一次添加每个网络设备. 只需要编写excel表格,即可一键添加监控. 安装excel python模块xlrd yum -y install epel-release yum -y install python-pip pip install --upgrade pip pip install xlrd 准备excel表格 表格列的信息依次为: 主机名,主机显示名,IP,主机所属

zabbix学习(三)添加WEB Monitoring

1.1 -->添加web监控 1.2创建scenario 1.3 1.4 1.5 1.6 1.7 查看创建的WEB moniotor 1.8 显示正常 1.9  --> 为WEB监控添加触发器 2.0 2.1 2.2   -->为web监控添加图形 2.3

zabbix web监控

深入浅出Zabbix 3.0 -- 第十章 Web 监控 http://www.mamicode.com/info-detail-1824545.html 原文地址:https://www.cnblogs.com/sweet22353/p/9101949.html