• zabbix设置企业微信预警+邮件告警


    一、微信告警

    1.注册企业微信

    在这里插入图片描述
    然后设置总部门添加成员
    在这里插入图片描述

    2.添加一个部门

    注:记住部门ID
    在这里插入图片描述

    3.添加用户

    在这里插入图片描述
    没有用户的可以从其他部门导入

    4.创建应用

    在这里插入图片描述
    添加logo,名称以及用户
    在这里插入图片描述
    创建完成记住AgentID和Secret
    在这里插入图片描述
    企业ID也要记住
    在这里插入图片描述

    5. 微信企业号接口调试工具

    https://open.work.weixin.qq.com/wwopen/devtool/interface/combine
    在这里插入图片描述
    填入screct和看结果是否为OK

    6、配置脚本

    zabbix server上操作
    (1)安装requests组件

    dnf provides */pip3     #寻找没有依赖的pip包
    yum install python3-pip-9.0.3-8.el7.noarch      #下载合适的包
    
    • 1
    • 2

    (2)进入到 /usr/lib/zabbix/alertscripts 编写脚本

    vim  wx.sh
    
    #!/bin/bash
    CorpID="wwa585bddbc4b9e9be"
    Secret="YDrBM8tcNmcABuZ0dFe5umbVj36zc0NhtoT_nhmF30w"
    GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?
    corpid=$CorpID&corpsecret=$Secret"
    Token=$(/usr/bin/curl -s -G $GURL |awk -F\": '{print $4}'|awk -F\" '{print $2}')
    # echo $Token
    PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Token"
    
    function body(){         local int agentid=1000002
        local UserID="@all"
        local PartyID=2
        local Msg=$(echo "$@" | cut -d" " -f3-)
        printf '{\n'
        printf '\t"touser": "'"$UserID"\"",\n" 
        printf '\t"toparty": "'"$PartyID"\"",\n"
        printf '\t"msgtype": "text",\n'         printf '\t"agentid": "'"$agentid"\"",\n"         printf '\t"text": {\n'         printf '\t\t"content": "'"$Msg"\""\n" 
        printf '\t},\n' 
        printf '\t"safe":"0"\n' 
        printf '}\n'
    }
    /usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    给权限

    chmod +x wx.sh
    chown zabbix.zabbix wx.sh
    systemctl restart zabbix-server.service
    
    • 1
    • 2
    • 3

    在这里插入图片描述
    (3)命令行测试发送:

    ./weixin.sh test123 {"errcode":0,"errmsg":"ok","msgid":"mrVtVXE39it1tWVvd57npJdUhX1zmSZZyLiL4oKQeXbJ t9VoCB--nykac4P9nGRzwWn0lVah5HxQ26PmXpV37g"}
    
    • 1

    在这里插入图片描述

    7.zabbix web界面中配置微信报警

    1> 进入:管理 -> 报警媒介类型 -> 创建媒体类型:
    脚本参数
    {ALERT.SENDTO}
    {ALERT.SUBJECT}
    {ALERT.MESSAGE}

    在这里插入图片描述
    配置模板
    1、问题模板
    在这里插入图片描述
    2、恢复模板
    在这里插入图片描述

    8 用户和报警媒介关联

    在这里插入图片描述

    9 配置动作和操作

    在这里插入图片描述

    .10 测试报警

    在这里插入图片描述
    在这里插入图片描述
    微信获得预警

    二、邮件告警

    1.如图所示进行设置

    在这里插入图片描述
    注意:密码是邮箱授权码

    2.创建完成后测试发送邮件

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    3.修改模板

    1.问题模板
    在这里插入图片描述

    修改默认报警模板
    设置动作
    默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
    默认信息:
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    2.恢复模板

    在这里插入图片描述

    设置恢复:
    恢复:恢复主旨:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
    恢复信息:
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    4.创建用户

    在这里插入图片描述

    5.配置动作

    在这里插入图片描述
    在这里插入图片描述

    7.测试报警

    在这里插入图片描述
    在这里插入图片描述
    邮件预警完成

  • 相关阅读:
    【Linux详解】——进程概念
    调整elment-ui的表头字体大小
    zookeeper常用命令详解
    都啥时候了 , 不会有人还搞不懂new String(“abc“)创建了几个对象吧?快看看吧!
    287. 寻找重复数 Python
    万亿数据秒级响应,Apache Doris 在360 数科实时数仓中的应用
    C++ Primer学习笔记-----第十三章:拷贝控制
    新产品开发之C流程 (C-flow)
    Java中的InetAddress类
    springboot毕设项目车销售管理系统724s0(java+VUE+Mybatis+Maven+Mysql)
  • 原文地址:https://blog.csdn.net/JiaGeYa/article/details/126076271