ZABBIX 之 更新监控群组信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ZABBIX 之 更新监控群组信息相关的知识,希望对你有一定的参考价值。

作用:

根据提交过来的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 之 更新监控群组信息的主要内容,如果未能解决你的问题,请参考以下文章

Zabbix实战之运维篇Zabbi监控平台的web基本操作

zabbix没有收到报警邮件

zabbix实现钉钉监控告警

zabbix实现钉钉监控告警

Zabbix分布式监控系统Zabbix

zabbix监控添加主机,添加模板,处理图形中的乱码,自动发现