上期已经讲述了 然后在树莓派中安装zabbix服务器
现在我们配置一下zabbix的 钉钉通知
实际这部分我也是网站找了好久才找到一个能用的,其他的 脚本执行起来都会报错
首先就是要在钉钉中创建一个机器人,当然是先要创建个钉钉群才能建立这个机器人
1、或得 这个机器人的 webhook 保留好备用
2、进入 /usr/lib/zabbix/alertscripts/ 目录 创建脚本 dingding.sh
#!/bin/bash
to=$1
subject=$2
text=$3
curl '这里修改成上面获取到的钉钉 webhook 地址' \
-H 'Content-Type: application/json' \
-d '
{"msgtype": "text",
"text": {
"content": "'"$text"'"
},
"at":{
"atMobiles": [ "'"$1"'" ],
"isAtAll": false
}
}'
然后测试一下 能不能正常发送消息
<span class="hljs-comment">#chmod +x dingding.sh #赋予执行权限</span>
#bash send.sh hello lyshark test123 #发送test123 进行测试
{<span class="hljs-string">"errmsg"</span>:<span class="hljs-string">"ok"</span>,<span class="hljs-string">"errcode"</span>:0}
成功以后
点击图形界面,选择管理->报警媒介->创建报警媒介
.
名称:钉钉报警
新增脚本参数:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}.
点击图形界面,选择配置->动作->创建动作,首先创建一个动作.
紧接着点击操作->配置
一下故障报警消息格式
标题改为:
故障{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}
继续往下看,点击新的
,配置一个报警用户组和报警使用消息.
下图表示触发5次动作,每隔120秒触发一次,告警发给 admin 用户,用钉钉媒介发送.
当配置完成一个故障报警后,下面就继续配置一个恢复后的提示.
标题改为:
恢复{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}
最终点击蓝色字体的 “添加”选项, 继续点击 下方 蓝色背景 白色字体的 “添加”增加.
配置告警用户,点击管理->用户->Admin->报警媒介
,修改 类型为钉钉报警 ,收件人 填写 注册钉钉群的 手机号 ,其他默认勾选就可以点添加
最后点击更新按钮完成任务了.