博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
zabbix 通过微信(团体)企业号报警 简例
阅读量:6655 次
发布时间:2019-06-25

本文共 2814 字,大约阅读时间需要 9 分钟。

说明:1.通过在微信公众号平台注册一个团体的企业号,这种个人就可以注册;

           2.通过python来设置脚本;
           3.然后在zabbix的web界面添加报警媒介类型,最后在action中调用报警媒介就OK了

————————————————————————————————————————

 
①在微信企业号中的设置:
添加成员,创建部门
zabbix 通过微信(团体)企业号报警 简例
 
②创建"自建应用":
重点是设置此应用谁可以看见、使用
zabbix 通过微信(团体)企业号报警 简例
zabbix 通过微信(团体)企业号报警 简例
zabbix 通过微信(团体)企业号报警 简例
zabbix 通过微信(团体)企业号报警 简例
 
③记录CorpID、secret、AgentID
zabbix 通过微信(团体)企业号报警 简例
zabbix 通过微信(团体)企业号报警 简例
zabbix 通过微信(团体)企业号报警 简例
 
 
④根据个人的ID、secret修改如下代码,并且将其放入zabbix  /usr/lib/zabbix/alertscripts 的目录下(少数人可能会不一样);
 

#!/usr/bin/env python#coding: utf-8import timeimport urllib,urllib2import jsonimport sys"""touser否成员ID列表(消息接收者,多个接收者用‘|’分隔,最多支持1000个)。特殊情况:指定为@all,则向关注该企业应用的全部成员发送toparty否部门ID列表,多个接收者用‘|’分隔,最多支持100个。当touser为@all时忽略本参数totag否标签ID列表,多个接收者用‘|’分隔。当touser为@all时忽略本参数msgtype是消息类型,此时固定为:textagentid是企业应用的id,整型。可在应用的设置页面查看content是消息内容safe否表示是否是保密消息,0表示否,1表示是,默认0"""# baseurl = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken'# securl = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s' % access_tokenclass WeChatMSG(object):    def __init__(self,content):        self.gettoken_url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken'        self.gettoken_content = {                            'corpid' : 'wwe****cae9f961e45',            #企业ID                            'corpsecret' : 'fFm*****sR4DxndBHqhHgTMe42CAxO4TE' ,   #企业secret                            }        self.main_content = {                            "toparty":"2",           #部门ID                            "agentid":"1000002",     #agentID                            "msgtype": "text",                            "text":{                            "content":content,                                    }                            }    def get_access_token(self,string):        token_result = json.loads(string.read())        access_token=  token_result['access_token']        return access_token.encode('utf-8')    def geturl(self,url,data):        data = self.encodeurl(data)        response = urllib2.urlopen('%s?%s' % (url,data))        return response.read().decode('utf-8')    def posturl(self,url,data,isjson = True):        if isjson:            data = json.dumps(data)        response = urllib2.urlopen(url,data)        return response.read().decode('utf-8')    def encodeurl(self,dict):        data = ''        for k,v in dict.items():            data += '%s=%s%s' % (k,v,'&')        return dataif __name__ == '__main__':    if len(sys.argv) == 4:        touser,notuse,content = sys.argv[1:]    else:        print 'error segments, now exit'        sys.exit()    msgsender = WeChatMSG(content)    access_token_response = msgsender.geturl(msgsender.gettoken_url, msgsender.gettoken_content)    access_token =  json.loads(access_token_response)['access_token']    sendmsg_url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s' % access_token    print msgsender.posturl(sendmsg_url,msgsender.main_content)

  要给py文件赋予相关权限:命令->>chmod  ->>chown

 
⑤在zabbix的web界面添加报警媒介类型:
    注意:脚本名字要正确
 
 

转载于:https://blog.51cto.com/jackor/2071561

你可能感兴趣的文章
存储过程二
查看>>
ulimit的坑
查看>>
java集合框架之Collections
查看>>
3.2.1if语句
查看>>
vivado 波形保存以及arp
查看>>
下拉框里根据选择项不同,显示的图片也不同
查看>>
回顾:Linux环境 Mysql新建用户和数据库并授权
查看>>
第四周作业
查看>>
Android平台Native代码的崩溃捕获机制及实现
查看>>
saltstack之(九)配置管理源码部署Nginx
查看>>
2017年Android SDK下载安装及配置教程(附带原文地址)
查看>>
Cocos2dx 入门小游戏实例
查看>>
HDU——2067 小兔的棋盘
查看>>
洛谷——P1560 [USACO5.2]蜗牛的旅行Snail Trails
查看>>
py标准模块总结
查看>>
了解的应用领域 程序语言的岗位
查看>>
ajax
查看>>
iOS Development Sites
查看>>
2018-2019-1 20165320 《信息安全系统设计基础》第四周学习总结
查看>>
Church 整数前驱的推导
查看>>