使用钉钉机器人对业务异常进行告警(Linux)

添加钉钉机器人

首先使用电脑版操作,目前个人已知的钉钉机器人只能存在于钉钉群,钉钉群的建群需求是至少 3 人,当然,你建群之后可以把其它人请出去。

【1】首先,我们进入一个钉钉群创建我们的机器人:

【2】目前钉钉已经存在了一些项目的机器人,你可以根据自己的选,当然,我们本次就用自定义的,添加一个名为 HELLO ROBOT 机器人:


安全设置目前有3种方式:

(1)方式一,自定义关键词(最简单的方式)
最多可以设置10个关键词,消息中至少包含其中1个关键词才可以发送成功。
例如:添加了一个自定义关键词:监控报警
则这个机器人所发送的消息,必须包含 监控报警 这个词,才能发送成功。
(2)方式二,加签 (见官网
(3)方式三,IP地址(段)


注意:安全设置的上述三种方式,需要至少设置其中一种,以进行安全保护。校验不通过的消息将会发送失败,错误如下:
// 消息内容中不包含任何关键词
{
  "errcode":310000,
  "errmsg":"keywords not in content"
}

// timestamp 无效
{
  "errcode":310000,
  "errmsg":"invalid timestamp"
}

// 签名不匹配
{
  "errcode":310000,
  "errmsg":"sign not match"
}

// IP地址不在白名单
{
  "errcode":310000,
  "errmsg":"ip X.X.X.X not in whitelist"
}
【3】 机器人添加完成,会生成一个 webhook,这是你上传数据接口,同时这个接口也代表着该机器人的身份标识,相当重要!


【4】添加完成后,机器人会在群里发送一条消息:

【5】实现告警脚本

#!/bin/bash
#script_name:alert_to_DingDing.sh
#业务告警 是安全设置中的关键词

function SendMessageToDingding(){
        url="https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxoooooooooo"
        UA="Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/535.24 (KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24"

        res=`curl -XPOST -s -L -H "Content-Type:application/json" -H "charset:utf-8" $url -d "
        {
        \"msgtype\": \"text\",
        \"text\": {
                 \"content\": \"业务告警\n$1\n$2\"
                 }
    }"`

        echo $res
}

subject="Test"
body="XXX业务发生异常,请及时处理"
SendMessageToDingding $subject $body

参考:
官网:https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq
https://blog.51cto.com/weixiaoxin/1964872
https://www.cnblogs.com/Dy1an/p/9264691.html
https://www.cnblogs.com/xuliuzai/p/11469039.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章