美文网首页Linux运维Linux学习之路我用 Linux
zabbix设置微信告警,亲测可用!!!

zabbix设置微信告警,亲测可用!!!

作者: 一只刚刚开始吃猫粮的运维狗 | 来源:发表于2017-11-13 11:24 被阅读277次

    zabbix微信告警

    前面写了一个zabbix微信告警的,用的我的企业号,后来发现用的人太多消息都超过限制了,应大家要求发布个可以用主机企业号的发送程序,填自己的企业号就可发送微信告警消息!使用go语言开发(感谢老司机提供的微信sdk)

    首先你得有个企业号!!!!

    关于企业号的申请,什么是corpid,secret,agentid,微信号,用户账号等等问题我就不科普了,大家可以上腾讯的企业号开发者中心查看,或者查看itnihao的一篇blog,http://itnihao.blog.51cto.com/1741976/1733245图文并貌写的很清楚。

    下载程序

    下载地址:
    zabbix_weixin.x86.tar.gz(Linux32位版本)
    zabbix_weixin.x86_64.tar.gz(Linux64位版本)

    部署步骤

    下载程序到你的zabbix server的AlertScriptsPath目录下。不知道什么是AlertScriptsPath目录,不知道怎么配置的,直接看官方文档!!!zabbix server配置文件
    如果之前没有设置过AlertScriptsPath,设置之后要重启zabbix server
    假设我的zabbix server的AlertScriptsPath目录为/usr/local/zabbix/alertscripts

    wget http://dl.cactifans.org/tools/zabbix_weixin.x86_64.tar.gz

    tar zxvf zabbix_weixin.x86_64.tar.gz

    mv zabbix_weixin/weixin .

    chmod a+x weixin

    mv zabbix_weixin/weixincfg.json /etc/

    rm -rf zxvf zabbix_weixin.x86_64.tar.gz

    rm -rf zabbix_weixin/

    接下来一步很重要,编辑/etc/weixincfg.json文件,配置你的企业号corpid,secret,agentid,

    {
    "corp": {
    "corpid": "wxxxxxx",
    "secret": "Vn6dxxxx",
    "agentid": 1
    }
    }

    不知道哪里看corpid,scret,agentid的直接看itnihao的文章,不要再问我!
    AgentId

    AgentId

    测试

    /usr/local/zabbix/alertscripts/weixin xxx subject body

    解释一下(这里我只是演示,具体的你要替换成你自己的信息,切不可按图索骥

    xxx为你的微信账号!注意不是微信号!也不是微信昵称!当然你也可以把用户账号设置成微信号或者微信昵称,自己设置!

    subject 告警主题

    boyd 告警闲情

    介于多数人分不清楚,这里解释一下:
    在微信企业号里,成员要关注企业号,需要审核,审核之后每个人会赋予一个账号。
    个人账号

    个人账号
    如果发送显示“OK”,表示发送成功,应该就会收到消息!

    zabbix设置

    先添加微信到告警媒介

    告警媒介
    3.0需要额外配置下,不配置不能发送!!!
    [图片上传中...(image-6dbac4-1510542951693-4)]
    关联到用户
    用户
    告警内容定制
    内容
    注意:收件人哪里填需要收消息的人的个人账号,多个人中间用“|”号隔开,如图所示
    告警内容是我自己定制的,大家可以参考我的,直接复制过去用

    告警主题:

    [{TRIGGER.SEVERITY}]服务器:{HOSTNAME1}发生:{TRIGGER.NAME}故障!

    告警内容:

    告警主机: {HOSTNAME1}

    主机分组: {TRIGGER.HOSTGROUP.NAME}

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

    告警等级: {TRIGGER.SEVERITY}

    告警信息: {TRIGGER.NAME}

    告警项目: {TRIGGER.KEY1}

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

    当前状态: {TRIGGER.STATUS}

    事件ID: {EVENT.ID}


    告警恢复内容

    恢复主题:

    [{TRIGGER.SEVERITY}]服务器:{HOSTNAME1}{TRIGGER.NAME}已恢复!

    恢复内容:

    告警主机: {HOSTNAME1}

    主机分组: {TRIGGER.HOSTGROUP.NAME}

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

    告警等级: {TRIGGER.SEVERITY}

    告警信息: {TRIGGER.NAME}

    告警项目: {TRIGGER.KEY1}

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

    当前状态: {TRIGGER.STATUS}

    事件ID: {EVENT.ID}


    设置好之后,设置动作时,掉用weiixn就是了
    [图片上传中...(image-512ab5-1510542951692-1)]
    至此设置完成!

    最终效果

    效果

    FAQ:
    A.测试不能通过,返回errcode!

    1.检查/etc/weixincfg.json文件里的corpid,secert,agentid配置是否正确
    2.检查接受者企业账号是否正确
    3.检查接受着是否在这个应用的通讯录里

    B.zabbix不能收到告警消息
    1.检查发送程序有无可执行权限
    2.检查发送程序是否在zabbix server的AlertScriptsPath目录下
    3.检查是否关联到用户
    4.检查是否掉用了发送动作

    C. 发送限制
    1.发送频率基本可以满足需求,没有别的限制。
    2.每日发送次数有一定限制,具体与企业号关注人数有关,详情查看企业号开发文档

    转自当代张思德的博客!!!!

    相关文章

      网友评论

      • 一只刚刚开始吃猫粮的运维狗:有的时候运维过程中可能会发现微信告警突然不发送了,目前我遇到的有两种原因,1.消息被微信拦截,这样就需要去微信API中心去解除限制,2,是证书过去,需要yum update一下

      本文标题:zabbix设置微信告警,亲测可用!!!

      本文链接:https://www.haomeiwen.com/subject/jtaamxtx.html