zabbix 钉钉shell告警脚本
时间: 2023-10-30 07:06:40 浏览: 173
Zabbix 是一款开源的企业级监控软件。在 Zabbix 中,可以设置各种告警方式,其中包括钉钉告警。本文将介绍如何编写钉钉的 Shell 告警脚本。
首先,我们需要在钉钉中创建一个机器人。在钉钉群中,点击右上角的设置按钮,选择机器人管理,然后点击创建机器人。选择自定义机器人,设置机器人名称和头像,然后复制 Webhook 地址。
接下来,我们需要编写 Shell 脚本。可以使用任何编辑器,比如 vim,nano 或者 gedit。以下是一个简单的 Shell 脚本示例:
```bash
#!/bin/bash
# 钉钉机器人 webhook 地址
url="https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXX"
# 消息内容
message="$1"
# 发送 POST 请求
curl -H "Content-Type: application/json" -X POST -d "{\"msgtype\":\"text\",\"text\":{\"content\":\"$message\"}}" $url
```
在脚本中,首先设置了钉钉机器人的 Webhook 地址。然后获取了消息内容,该内容作为脚本的第一个参数传入。最后,使用 curl 命令发送 POST 请求,将消息内容作为 JSON 格式发送给钉钉机器人。
现在,将脚本保存为 dingding.sh,并将其放置在 Zabbix 的 alertscripts 目录中。该目录通常位于 /usr/lib/zabbix/alertscripts。然后,将脚本的权限设置为可执行:
```bash
chmod +x /usr/lib/zabbix/alertscripts/dingding.sh
```
接下来,在 Zabbix 中创建一个新的媒介类型。在 Zabbix 管理界面中,选择 Administration -> Media types。然后点击 Create media type 按钮。
在弹出窗口中,输入以下信息:
- Name: 钉钉告警
- Type: Script
- Script name: dingding.sh
- Script parameters: {ALERT.MESSAGE}
然后点击 Add 按钮进行保存。
最后,在 Zabbix 的告警动作中,选择钉钉告警媒介类型,并将钉钉机器人 Webhook 地址作为参数传入。现在,当 Zabbix 监控出现问题时,将会通过钉钉机器人发送告警消息。
阅读全文