Zabbix 钉钉推送消息

添加媒体类型

在这里插入图片描述
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.SUBJECT}

添加User权限

使用已有的Admin账户来关联告警媒介DingTalk,并配置推送消息的级别
在这里插入图片描述

添加Action

添加一个条件:触发级别 大于等于 平均
在这里插入图片描述
分别配置每个操作的消息内容
在这里插入图片描述
操作(Operations):

服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
{
告警主机:{HOST.NAME}
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME} 
告警时间:{EVENT.DATE}_{EVENT.TIME}
当前状态:故障  值={ITEM.VALUE}
故障已持续{EVENT.AGE},请尽快处理
事件ID:{EVENT.ID}
}

恢复操作 (Revovery Operations):

服务器:{HOST.NAME}发生: {TRIGGER.NAME}已恢复!
{
告警主机:{HOST.NAME}
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME} 
告警时间:{EVENT.DATE}_{EVENT.TIME}
当前状态:故障  值={ITEM.VALUE}
故障已持续{EVENT.AGE}
事件ID:{EVENT.ID}
}

确认操作(Update Operations) :

服务器:{HOST.NAME}: 报警确认!
{
告警主机:{HOST.NAME}
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME} 
告警时间:{EVENT.DATE}_{EVENT.TIME}
当前状态:故障值={ITEM.VALUE}
故障已持续{EVENT.AGE}
事件ID:{EVENT.ID}
}

设置完Default message后,进行操作详情的配置,后续Revovery Operations、Update Operations一样
在这里插入图片描述
在这里插入图片描述

注册钉钉机器人

在这里插入图片描述
添加机器人并记住webhook
在这里插入图片描述

添加告警脚本

脚本路径在/etc/zabbix/zabbix_server.conf文件里面所指定AlertScriptsPath目录下:/usr/lib/zabbix/externalscripts在这里插入图片描述
脚本AlertDingTalk.py如下:

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import requests
import json
import sys
import os
 
headers = {'Content-Type': 'application/json;charset=utf-8'}
# Webhook地址:
api_url = "https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxx"
# 发送方法体
def msg(text):
    json_text= {
     "msgtype": "text",
        "text": {
            "content": text
        },
        "at": {
            "atMobiles": [
                "需要@群里人的电话"
            ],
            "isAtAll": False #是否全部@
        }
    }
    print(requests.post(api_url,json.dumps(json_text),headers=headers).content)
# 主函数
if __name__ == '__main__':
    text = sys.argv[1]
msg(text)

保存脚本至/usr/lib/zabbix/externalscripts路径中完成后对脚本赋予执行权限:chmod o+x AlertDingTalk.py
在这里插入图片描述
确保脚本文件编码格式是unix而非doc利用如下命令查看文件格式:set ff:set fileformat可以看到如下信息

fileformat=dos 或 fileformat=unix

利用如下命令修改文件格式:set ff=unix:set fileformat=unix完成后wq保存

如下则本地执行脚本成功
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值