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

ZABBIX 之 更新监控群组信息

时间:2019-07-12 23:38:33      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:ade   get   self   提交   api   exception   headers   失败   upd   

作用:

根据提交过来的groupid值,更新group监控组名称。

代码:

class Zabbix_UpdateGroup():
    def __init__(self,group_id,group_name):
        self.group_id = group_id
        self.group_name = group_name

    def update(self):
        ‘‘‘
        更新监控群组的信息
        :return: 当创建成功,返回创建群组的ID值以前群组名,如创建失败,返回None
        ‘‘‘
        ZABBIX_URL = ‘http://10.3.153.14:9000‘

        url = "{}/api_jsonrpc.php".format(ZABBIX_URL)
        header = {"Content-Type": "application/json"}

        # 使用hostgroup.update方法
        data = {
            "jsonrpc": "2.0",
            "method": "hostgroup.update",
            "params": {
                "groupid": self.group_id,
                "name": self.group_name
            },
            "id": 2,
            "auth": "924ba62dfdc27ceec1b80b4eef1e1fb7"
        }
        # 由于API接收的是json字符串,故需要转化一下
        value = json.dumps(data).encode(‘utf-8‘)

        # 对请求进行包装
        req = request.Request(url, headers=header, data=value)

        # 验证并获取Auth ID
        try:
            # 打开包装过的url
            result = request.urlopen(req)
        except Exception as e:
            print("异常数据:", e)
        else:
            response = result.read()
            # 上面获取的是bytes类型数据,故需要decode转化成字符串
            page = response.decode(‘utf-8‘)
            # 将此json字符串转化为python字典
            page = json.loads(page)
            # print(page.get(‘result‘))
            ret = page.get(‘result‘)
            # result.close()
            return ret

结果:

成功返回监控群组ID

ZABBIX 之 更新监控群组信息

标签:ade   get   self   提交   api   exception   headers   失败   upd   

原文地址:https://blog.51cto.com/12965094/2419831

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