Zabbix添加-钉钉故障报警

一、添加钉钉群机器人,获取webhook地址

  1、

  

  2、

  3、

  4、

  5、

 二、配置报警触发脚本

[root@zhangxin alertscripts]# cat /usr/lib/zabbix/alertscripts/dingding1.py 
#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
import json
import sys
import os
   
headers = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=d3806ed133584fefdec932eca9fcfc41fd4ca0e452075a9680927e676e0b4d22"         #钉钉的Webhook
   
def msg(text):
    json_text= {
     "msgtype": "text",
        "at": {
            "atMobiles": [
                "153xxxxxxxx"            #制定@某个人 
            ],
            "isAtAll": False
        },
        "text": {
            "content": text
        }
    }
    print requests.post(api_url,json.dumps(json_text),headers=headers).content
       
if __name__ == '__main__':
    text = sys.argv[1]
    msg(text)
[root@zhangxin alertscripts]# 
vim /usr/lib/zabbix/alertscripts/dingding1.py
@赋予脚本权限
[root@zhangxin ~]# chmod +x /usr/lib/zabbix/alertscripts/dingding1.py
@测试脚本
[root@zhangxin alertscripts]# python dingding1.py '这是个测试'
{"errcode":0,"errmsg":"ok"}
[root@zhangxin alertscripts]# 
python dingding1.py '这是个测试'

、配置Zabbix Web报警

1、创建报警媒介

  

2、

  

3、配置动作

  

4、

  

5、

  

6、

  

 7、配置用户

  

10、测试报警

@关闭Nginx服务
[root@zhangxin ~]# netstat -tanp | grep 83
tcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN      2283/unicorn master 
tcp        0      0 0.0.0.0:83              0.0.0.0:*               LISTEN      120386/nginx: maste 
[root@zhangxin ~]# nginx -s stop
[root@zhangxin ~]# netstat -tanp | grep 83
tcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN      2283/unicorn master 
[root@zhangxin ~]# 
netstat -tanp | grep 83

  

10.1、钉钉报警成功

   

@故障通知
默认标题:服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
消息内容 :服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
{
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}
}
默认标题:服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
@恢复通知
默认标题:服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!
消息内容:服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!
{
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{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}
}
默认标题:服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!
原文地址:https://www.cnblogs.com/Mr-Axin/p/11793306.html