温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

zabbix 微信告警

发布时间:2020-07-03 11:36:15 来源:网络 阅读:206 作者:laihuadongcto 栏目:系统运维

配置微信告警:
准备事项:

微信企业号 
企业号已经被部门成员关注 
企业号有一个可以发送消息的应用,一个授权管理员,可以使用应用给成员发送消息

需要得到的信息

成员账号
组织部门ID
应用ID
CorpID和Secret

首先我们登陆企业微信-→ 应用于小程序  创建我们的zabbix告警

zabbix 微信告警

完成后点击我们创建的小程序 即可获得 对应的ID信息:

zabbix 微信告警

获取我们的企业corpid:

zabbix 微信告警


为zabbix_server 增加wechat告警脚本和告警媒介:

将脚本复制到/usr/lib/zabbix/alertscripts默认脚本存放路径,名字任意。

#!/usr/bin/python2.7
#_*_coding:utf-8 _*_
import requests,sys,json
import urllib3
urllib3.disable_warnings()

reload(sys)
sys.setdefaultencoding('utf-8')

def GetToken(Corpid,Secret):
Url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken"
Data = {
"corpid":Corpid,
"corpsecret":Secret
}
r = requests.get(url=Url,params=Data,verify=False)
Token = r.json()['access_token']
return Token

def SendMessage(Token,User,Agentid,Subject,Content):
Url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s" % Token
Data = {
"touser": User, # 企业号中的用户帐号,在zabbix用户Media中配置,如果配置不正常,将按部门发送。
#"totag": Tagid, # 企业号中的部门id,群发时使用。
"msgtype": "text", # 消息类型。
"agentid": Agentid, # 企业号中的应用id。
"text": {
"content": Subject + '\n' + Content
},
"safe": "0"
}
r = requests.post(url=Url,data=json.dumps(Data),verify=False)
return r.text


if __name__ == '__main__':
User = sys.argv[1] # zabbix传过来的第一个参数
Subject = sys.argv[2] # zabbix传过来的第二个参数
Content = sys.argv[3] # zabbix传过来的第三个参数

Corpid = "XXXXXXXXXXXXXXf" # CorpID是企业号的标识
Secret = "XXXXXXXXXXXXXXXXXX" # Secret是管理组凭证密钥
#Tagid = "1" # 通讯录标签ID
Agentid = "xxxxxx" # 应用ID

Token = GetToken(Corpid, Secret)
Status = SendMessage(Token,User,Agentid,Subject,Content)
print Status

新增告警媒介:

zabbix 微信告警

增加告警信息模板:内容可根据自己需求填写

zabbix 微信告警


企业号通讯录:把所有要接收告警的人都添加到企业号通信录里面。

最后测试告警发送即可:

zabbix 微信告警


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI