Zabbix 6.4版本下增加企业微信告警设置
步骤如下:
1、申请企业微信:https://work.weixin.qq.com/wework_admin/register_wx?from=myhome_baidu
2、创建企业微信群机器人
3、查看群机器人webhook信息
4、zabbix告警脚本配置
A、在zabbix服务器控制台通过vim Webhook.py编辑脚本如下
B、确认脚本位置,步骤5运行脚本的时候要注意报错,一般由脚本位置位置错误引起,后边详细说明
#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
import json
import sys
import os
headers = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "输入自己申请的群机器人webhook信息"
def msg(text):
json_text= {
"msgtype": "markdown",
"markdown": {
"content": text
},
}
print requests.post(api_url,json.dumps(json_text),headers=headers).content
if __name__ == '__main__':
text = sys.argv[1]
msg(text)
5、zabbix端配置企业微信告警
A、Zabbix管理后台配置脚本告警
B、配置消息模板,包括告警通知和回复告警通知
C、因为脚本中已经将文本类型修改为markdown,可直接对消息模板进行个性化设置
**告警消息模板**
> <font color="warning">【ZABBIX监控告警】</font>
>通知时间:<font color="comment">{DATE}-{TIME}</font>
>告警级别:**<font color="warning">{TRIGGER.SEVERITY}</font>**
>主机名称:<font color="comment">{HOST.NAME}</font>
>主机IP:<font color="comment">{HOST.IP}</font>
>告警时间:**<font color="warning">{EVENT.DATE}-{EVENT.TIME}</font>**
>问题名称:**<font color="warning">{EVENT.NAME}</font>**
>问题详情:<font color="comment">{ITEM.NAME}:{ITEM.VALUE}</font>
>目前状态:**<font color="warning">{TRIGGER.STATUS}</font>**
>操作数据:<font color="comment">{EVENT.OPDATA}</font>
>告警持续时间:**<font color="warning">{EVENT.DURATION}</font>**
**恢复告警消息模板**
<font color="info">【ZABBIX告警恢复】</font>
>通知时间:<font color="comment">{DATE}-{TIME}</font>
>告警级别:**<font color="info">{TRIGGER.SEVERITY}</font>**
>主机名称:<font color="comment">{HOST.NAME}</font>
>主机IP:<font color="comment">{HOST.IP}</font>
>告警时间:**<font color="warning">{EVENT.DATE}-{EVENT.TIME}</font>**
>问题名称:**<font color="info">{EVENT.NAME}</font>**
>问题详情:<font color="comment">{ITEM.NAME}:{ITEM.VALUE}</font>
>目前状态:**<font color="info">{TRIGGER.STATUS}</font>**
>操作数据:<font color="comment">{EVENT.OPDATA}</font>
>告警持续时间:**<font color="info">{EVENT.DURATION}</font>**
D、创建动作–触发器动作,当监控设备异常时可微信通知,因为测试原因所有告警都通知,用户可根据实际情况调整通知类型
E、配置操作,将发生的告警通知微信用户
** ## 报错处理
1、测试脚本时提示
annot execute command
“/usr/local/zabbix/share/zabbix/alertscripts/webhook.py”: cannot resolve path [2] No such file or directory由于路径和实际路径不一致导致,处理方式:通过find / -name webhook.py找到脚本实际路径,按照错误提示移动或复制脚本至准确路径
sudo mv /usr/lib/zabbix/alertscripts/Webhook.py /usr/local/zabbix/share/zabbix/alertscripts/ (这个是我的脚本移动处理)
进行授权 chmod +x /usr/lib/zabbix/alertscripts/Webhook.py
2、企业微信每次收到两次告警信息
效果如下: