一、添加一个钉钉机器人

在一个群聊里面,添加自定义机器人,如下图:
机器人使用说明见钉钉官方文档,https://open-doc.dingtalk.com/microapp/serverapi2/qf2nxq

Zabbix 4.0,创建自定义脚本监控-钉钉报警(3)_第1张图片

二、在Zabbix Server端创建脚本


在Zabbix配置的自定义脚本路径下创建ddrobot.py,该配置在Server端的zabbixserver.conf下的“AlertScriptsPath”

# vim /usr/lib/zabbix/alertscripts/dd_robot.py

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import os
import sys
import json
import requests

# 这里填写创建的自定义机器人地址
api_url = 'https://oapi.dingtalk.com/robot/send?access_token=4xxxxxxxxxxxxa19dcf'

headers = {'Content-Type':'application/json;charset=utf-8'}

def msg(text):
    json_text={
        "msgtype":"text",
        "text":{
            "content":text
        },
        "at":{
            "atMobiles":[
                "186..."         # @的人的手机号
            ],
            "isAtAll":False           # 是否@全员
        }
    }
    print requests.post(api_url,json.dumps(json_text),headers=headers).content

if __name__ == '__main__':

#text的值为运行脚本带的参数

    text = sys.argv[1]
    msg(text)

例如:./dd_robot.py 不见不散

Zabbix 4.0,创建自定义脚本监控-钉钉报警(3)_第2张图片

三、Zabbix报警配置

1、登陆Zabbix web端,选择 管理--报警媒介类型--新增报警媒介类型:

脚本名称为:dd_robot.py,参数为:{ALERT.MESSAGE}

2、在管理--用户--报警媒介--添加--选择刚才添加的钉钉报警即可~