zabbix使用webhook 实现告警

zabbix可以使用webhook来实现告警通知。Webhook是一种在事件发生时自动触发HTTP POST请求的机制,可以将告警信息发送到指定的URL.


目录

一、脚本部署

1、首先将脚本上传至zabbix server端

2、给脚本赋予执行权限

二、zabbix web界面配置

1、配置报警媒介类型

1.1、新建报警媒介

1.2、告警媒介模板

1.2.1、发送告警消息得模板

1.2.2、告警恢复消息模板

2、添加用户

2.1、新建用户

2.2、配置用户链接报警媒介

2.3、给用户权限

3、创建动作

3.1、创建动作

3.2、创建得动作链接到主机群组

3.3、配置动作由哪个用户完成

三、验证


一、脚本部署

1、首先将脚本上传至zabbix server端

查看脚本应该部署得目录位置

cat /etc/zabbix/zabbix_server.conf 
AlertScriptsPath=/usr/lib/zabbix/alertscripts

将脚本存在到 /usr/lib/zabbix/alertscripts 目录下,脚本更换机器人更改 key 就行

vim /usr/lib/zabbix/alertscripts/webhook.py
#!/usr/bin/python
#-*- coding: utf-8 -*-

import requests
import json
import sys
import os



#api_url="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=7550122e-9f95-4dfc-9d8b-3d47204fc254"
api_url="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=40d6be84-f457-43ef-b915-90691c678f88"
headers = {'Content-Type': 'application/json;charset=utf-8'}

def msg(user,subject,text):
    json_text = {
        "msgtype": "text",
        "text": {
            "content": subject + '\n' + text

        },
    }
    print(requests.post(api_url, json.dumps(json_text), headers=headers).content)

if __name__ == '__main__':
    user = str(sys.argv[1])
    subject = str(sys.argv[2])
    text = str(sys.argv[3])
    #user = "tt"
    #subject = "test"
    #text = "hello zjh-zabbix-wechat-webhook "
msg(user,subject,text)

2、给脚本赋予执行权限

二、zabbix web界面配置

1、配置报警媒介类型

1.1、新建报警媒介

点击 管理 ---> 报警媒介类型 ---> 创建媒介类型

类型选择脚本,名称自己填写,脚本名称zabbix 部署得脚本名称,脚本参数如下

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

1.2、告警媒介模板

1.2.1、发送告警消息得模板
主题:
服务故障: {EVENT.NAME}


消息:
告警主机: **{HOST.NAME}**
主机地址: **{HOST.IP}**
监控项目: {ITEM.NAME}
当前取值: {ITEM.LASTVALUE}
告警等级: {TRIGGER.SEVERITY}
告警时间: {EVENT.DATE}-{EVENT.TIME}
事件ID: {EVENT.ID}

1.2.2、告警恢复消息模板
主题:
故障恢复: {EVENT.NAME}
    
消息:
主机名称: **{HOST.NAME}**
主机地址: **{HOST.IP}**
告警名称: {EVENT.NAME}
持续时长: {EVENT.DURATION}
恢复时间: {EVENT.RECOVERY.DATE}-{EVENT.RECOVERY.TIME} 
当前状态: {TRIGGER.STATUS}
当前取值: {ITEM.LASTVALUE}
事件ID: {EVENT.ID}

2、添加用户

2.1、新建用户

2.2、配置用户链接报警媒介

2.3、给用户权限

3、创建动作

3.1、创建动作

3.2、创建得动作链接到主机群组

3.3、配置动作由哪个用户完成

三、验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值