1.创建群聊
2.添加机器人
3.复制webhook的地址
4.编写脚本
cd /usr/lib/zabbix/alertscripts(版本不同 脚本放的位置不同 可以在添加界面看到具体放到什么位置)
vim dingding.sh
#!/bin/bash
to=$1
subject=$2
text=$3
#此处的 xxx就是刚刚复制存留的 api 接口地址。(只粘贴token后面即可)
curl -i -X POST \
'https://oapi.dingtalk.com/robot/send?access_token=XXX' \
-H 'Content-type':'application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "'监控报警:''"$text"'"
},
"at":{
"atMobiles":[
"'"$1"'"
],
"isAtAll":false
}
}'
chmod +x dingding.sh
测试脚本是否执行成功。
sh dinhding.sh 11 22 33
四、设置前端创建脚本及报警媒介
再添加以下 3 个参数,分别对应脚本需要的 3 个参数:收件人地址、主题、详细内容。
添加后可以看到
如果位置刚才的脚本放的位置不对 这里会提示没有此脚本的
然后创建触发器 ---动作(这里我提前已经创建后触发器和动作了)
参数:可以自定义
--->步骤时间--->1000
--->标题(故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!)
--->默认信息下边的添加
告警主机:{HOSTNAME1}
告警主机:{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}
redis挂了,请处理(可以在下面添加一些自己想要发送的消息)比如
--->操作添加
--->步骤--->5 表示触发 5 次动作
--->步骤持续时间--->每隔 120 秒触发一次
--->告警发给 admin 用户
--->用”钉钉”媒介发送。
--->点击小”add”添加选项,否则等于没写
点击添加之后
--->右边恢复操作,相当于服务正常之后的操作
--->标题改为--->恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
--->信息改为--->
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}
--->点击”新的”添加发送选项
--->添加群组
--->添加用户 Admin
--->仅送到--->钉钉
--->点击小”添加”添加选项,否则等于没写
点击小 add 添加选项后再点击大 ADD 完成动作增加。