zabbix对接企业微信web机器人发送报警信息
#!/usr/bin/env python2# -*- coding:utf-8 -*-"""zabbix监控脚本-企业微信机器人"""import sysimport getoptimport requestsimport tracebacktry:opts, args = getopt.getopt(sys.argv[1:], shortopts='', longopts=['webhook_url=', 'alert_message='])for opt, value in opts:if opt == '--webhook_url':webhook_url = valueelif opt == '--alert_message':alert_message = valuewebhook_header = {"Content-Type": "application/json",}webhook_message = {"msgtype": "text","text": {"content": alert_message}}requests.post(url=webhook_url, headers=webhook_header, json=webhook_message)except:traceback.print_exc(file=open('/tmp/wx.log', 'w+'))
编写完脚本需要就按脚本放到zabbix指定目录下, 脚本位于服务器配置文件中定义的目录中AlertScriptsPath
注意脚本名称就是你脚本的命名的文件名需要注意后缀.py也要加上
添加管理
配置动作
添加信息格式

服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!报警主机:{HOST.NAME}监控项目:{ITEM.NAME}监控取值:{ITEM.LASTVALUE}报警等级:{TRIGGER.SEVERITY}当前状态:{TRIGGER.STATUS}报警信息:{TRIGGER.NAME}问题详情:{ITEM.NAME}-{ITEM.VALUE}报警时间:{EVENT.DATE} {EVENT.TIME}事件ID:{EVENT.ID}
恢复操作

服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!报警主机:{HOST.NAME}监控项目:{ITEM.NAME}监控取值:{ITEM.LASTVALUE}报警等级:{TRIGGER.SEVERITY}当前状态:{TRIGGER.STATUS}报警信息:{TRIGGER.NAME}报警时间:{EVENT.DATE} {EVENT.TIME}恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}持续时间:{EVENT.AGE}事件ID:{EVENT.ID}
发送企业微信

赞 (0)

