Zabbix 通过企业微信实现微信报警

首先需要去注册个企业微信,然后创建应用,下面是企业微信后台登录地址,这些就不说了,网上文档很多。

https://work.weixin.qq.com/wework_admin/loginpage_wx

编写脚本

  1. 请求企业微信的接口来发送消息

    /usr/lib/zabbix/alertscripts/wechat.sh:  #注意脚本存放路径

     

    #!/bin/bash
    CropID='wwa796f26fc6cf76b0'
    #企业ID,登录后台--> 我的企业-->底部企业ID
    Secret='-XBcHHreJzsKQm78v_IbPBGszGEPeo-j4ST_JQQFBqw'
    #应用秘钥,应用管理,往下拉看到“自建”后,点击作为报警的应用,下方可以看到Secret的值
    GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
    #拼接获取token的连接
    Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $10}')
    #获取token值
    PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"
    #推送消息的连接
    function body() {
     local int AppID=1000002
     local UserID=$1
     local PartyID=3
     local Msg=$(echo "$@" | cut -d" " -f3-)
     printf '{\n'
     printf '\t"touser": "'"$User"\"",\n"
     printf '\t"toparty": "'"$PartyID"\"",\n"
     printf '\t"msgtype": "text",\n'
     printf '\t"agentid": "'" $AppID "\"",\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
    #推送消息,--data-ascii是以ascii的方式post数据,双引号里是参数
    
    
    

    可以手动测试   

  2. 可以看到返回值是ok,警告可以忽略

  3. 创建报警媒介类型

      这三个参数必须得加,不加发消息收不到,亲测

      {ALERT.SENDTO}

扫描二维码关注公众号,回复: 11511365 查看本文章

      {ALERT.SUBJECT}

      {ALERT.MESSAGE}

      5.创建动作

对Linux servers主机组里做动作,不在该组里的主机,不会执行动作,看下图就明白了

Zabbix server没在linux server里,动作就没有执行

设置操作:  触发的操作,也就是报警的操作,点击小字“新的”

消息内容:

报警主机:{HOST.NAME}

报警时间:{EVENT.DATE} {EVENT.TIME}

报警等级:{TRIGGER.SEVERITY}

报警信息:{TRIGGER.NAME}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态: {TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID: {EVENT.ID}

 

选择发送消息,可以发送整个组和单独用户,我这里单独发送给自己

 

 

 

恢复操作也是一样的步骤,确认操作可以忽视,是问题出现的时候,是否确认问题点击后发送的,一般情况下用不上点击确认,所以这个可以忽视,大公司可能监控的人多,面对的问题多能用得到,然后就可以自定义监控项和触发器来进行测试了。

zabbix自定义监控项和触发器可以参考我之前的文章

https://blog.csdn.net/wojiuwangla/article/details/106101579

猜你喜欢

转载自blog.csdn.net/wojiuwangla/article/details/106104276