配置钉钉监控报警
1.登录钉钉
点击左上角加号创建群组(群组里最少2个人)
2.创建好群后,点击群设置,智能群助手,添加机器人
1 2 3 4 5 6 7 8 |
脚本:点击选择自定义 https://oapi.dingtalk.com/robot/send?access_token=xxxxxx 这个是钉钉官方给我们的一个接口,我们给这个接口传递消息,就会出现在群里 点击设置说明查看官方文档, 我们这里使用curl发送文本的方式,来报警 注意以下:内如必须带上你在钉钉里定义的关键词,必须,否则发送不成功。 |
3.配置脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#!/bin/bash to=$1 subject=$2 text=$3 curl 'https://oapi.dingtalk.com/robot/send?access_token=ba66251e3a19b25dc7ed91204c0b6151d8754b2d4cb' \ -H 'Content-Type: application/json' \ -d '{"msgtype": "text", "title":"'"$subject"'", "text": { "content": "'"zabbix$text"'" #注意这里必须带zabbix }, "at":{ "atMoblies":["'"$1"'"] }, "isAtAll": false }' |
然后给脚本执行权限,并且授予zabbix.zabbix权限,因为zabbix等会要调用
查看zabbix脚本存放位置:
1 |
vim /etc/zabbix/zabbix_server.conf |
1 |
AlertScriptsPath=/usr/lib/zabbix/alertscripts 脚本存放目录 |
将上面脚本移动到zabbix脚本存放目录下
1 |
mv 脚本 /usr/lib/zabbix/alertscripts |
4.然后配置报警媒介
1 2 3 4 5 6 |
点击菜单 - 管理 - 报警媒介类型 -创建媒体类型 1)监控方式添加脚本参数,这里不可自行修改,官方标准 {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE} |
5.接下来打开web界面开始配置动作
1 |
点击菜单 - 配置 - 动作 - 事件源(触发器) - 创建动作 |
动作
操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
注意:操作这里的不可以随意乱写,官方有自己的一套标准 错误报警信息参数: 默认接收人(标题)改为: 故障{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} |
恢复操作
1 2 3 4 5 6 7 8 9 10 11 12 13 |
注意:恢复操作这里的不可以随意乱写,官方有自己的一套标准 3)错误恢复报警信息设置 默认接收人(标题)改为: 恢复{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} |
6.最后授权脚本
1 2 3 4 |
管理-用户-(选择用户)-报警媒介 收件人:写手机号即可 |
7.测试
1 |
现在我关掉某个节点,或者删掉nginx的test页面,测试是否触发报警(我选择关掉了node1几点,这样会触发2个报警,一个是服务器节点丢失,另一个是nginx状态异常) |
我再将node1节点启动(同样会接受到2个恢复后的消息,因为我们在动作里配置了恢复操作)
- 本文固定链接: https://www.yoyoask.com/?p=2669
- 转载请注明: shooter 于 SHOOTER 发表