Zabbix添加钉钉告警

it2022-05-05  155

Zabbix添加钉钉告警(基于shell)

查看zabbix配置文件,确认脚本存放的默认路径

自定义告警脚本在/usr/local/zabbix/etc/zabbix_server.conf中配置,默认为: AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts警报脚本在Zabbix服务器上执行。 这些脚本位于服务器配置文件中定义的目录中AlertScriptsPath.

Zabbix-Server 在调用脚本的时候,会传递三个变量参数给脚本作为位置参数:$1, $2, $3。 其中:$1 表示收件人,$2 表示主题,$3 表示内容。

在钉钉上建群添加钉钉机器人,获取机器人的CURL

在刚刚的目录下创建告警脚本

注:如果是Python脚本需要搭建好Python环境且安装好相关模块,由于shell为Linux原

生,这里采用shell脚本,脚本如下:

#!/bin/bash LOGFILE="/tmp/dingding.log" :>"$LOGFILE" exec 1>"$LOGFILE" exec 2>&1 url="http://127.0.0.1/zabbix" CURL="/usr/bin/curl" to=$1 subject=`echo $2 | tr '\r\n' '\n'` body=`echo $3 | tr '\r\n' '\n'` ${CURL}  'https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXX' \    -H 'Content-Type: application/json' \    -d """  {      \"msgtype\": \"markdown\",      \"markdown\": {          \"title\":\"${subject}@18******5\",          \"text\": \"${body}\"      },     \"at\": {         \"atMobiles\": [             \"18*******5\",         ],         \"isAtAll\": false     }  }"""

 

CURL参数改成之前获取的机器人的地址

后面的手机号是在发消息时@的那个人的钉钉注册手机号

在zabbix web配置页面添加告警和动作

媒介设置好之后,添加动作

添加触发器

添加模板以及操作:

故障模板:

标题:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障! 消息内容: 告警主机:{HOSTNAME1} 告警IP:{HOST.IP} 告警时间:{EVENT.DATE} {EVENT.TIME} 等级:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警项目:{TRIGGER.KEY1} 问题详情:{ITEM.NAME}:{ITEM.VALUE} 持续时间:{EVENT.AGE} 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID}

 

还要添加操作,即告警给哪位用户:

恢复和确认的操作一样,模板如下:

 

恢复:

标题:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复! 内容: 告警主机:{HOSTNAME1} 告警IP:{HOST.IP} 恢复时间:{EVENT.DATE}{EVENT.RECOVERY.TIME} 告警等级:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警项目:{TRIGGER.KEY1} 问题详情:{ITEM.NAME}:{ITEM.VALUE} 持续时间:{EVENT.AGE} 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID}

 

确认:

标题:服务器:{HOST.NAME1}: 报警确认 内容: 服务器:{HOST.NAME1}发生: {TRIGGER.NAME}故障! 确认人:{USER.FULLNAME} 时间:{ACK.DATE} {ACK.TIME} 确认信息如下: "{ACK.MESSAGE}" 问题服务器IP:{HOSTNAME1} 问题ID:{EVENT.ID} 当前的问题是: {TRIGGER.NAME}

 

最后一步添加用户告警:

测试结果如下:

 

小功告成。

注:shell脚本内容为网上找的,忘记具体网址了,罪过罪过!


最新回复(0)