zabbix监控告警通知到钉钉群

 

1、新建一个钉钉群,然后添加一个自定义机器人,得到一个webhook(可设置安全关键词或主机ip)

例如得到的webhook为:https://oapi.dingtalk.com/robot/send?access_token=f21bbacc4f901681dfb3ab1384659a4f0eb59f1b6fc61191be1396f2f1234567

 

2、编写shell脚本,需添加可执行权限,当触发告警的时候执行(如果设置了关键词,就需要将关键词加在json里面,不然钉钉群收不到告警信息)

cd /lib/zabbix/alertscripts

vim zabbix-dingding.sh

复制代码
#!/bin/bash
to=$1
subject=$2
text=$3
curl 'https://oapi.dingtalk.com/robot/send?access_token=f21bbacc4f901681dfb3ab1384659a4f0eb59f1b6fc61191be1396f2f1234567' \
-H 'Content-Type: application/json' \
-d '
{
    "msgtype": "text",
    "text": {
        "content":  "'"$text"'"
    },
}'
复制代码

 

3、创建媒介

 

 4、填入相关信息,类型选择脚本,脚本名称就是刚刚编写的脚本,脚本参数也是需要的

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

 

 5、创建动作,注意事件源选择触发器

 

6、填写动作名称,添加触发器条件

 

 7、添加操作

问题: {EVENT.NAME}
复制代码
生产环境服务告警!!
告警主机:{HOST.NAME}
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME} 
告警问题:{ITEM.VALUE}
当前状态:故障
故障已持续{EVENT.AGE},请尽处理
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}
}
------来自zabbix监控平台
复制代码

 

 8、添加恢复操作

恢复: {EVENT.NAME}
复制代码
恢复: {EVENT.NAME}
生产环境服务恢复!!
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
告警问题:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}
故障共持续{EVENT.AGE}
事件ID:{EVENT.ID}
}
------来自zabbix监控平台
复制代码

 

9、看一下效果图

  

 

posted @   opscool  阅读(552)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
点击右上角即可分享
微信分享提示