Zabbix微信告警

摘要

Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理

Zabbix微信告警
问题:{"errcode":40014,"errmsg":"invalid access_token"}

最近很多朋友出现执行脚本的时候出现{"errcode":40014,"errmsg":"invalid access_token"}

这时候需要把企业微信号里的应用删除掉,从新进行添加。就可以发送成功了!


 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理。

关于邮件报警可以参考:
Zabbix 使用脚本发送邮件
Zabbix Web 邮件报警


 

一、微信企业号申请

地址: http://work.weixin.qq.com/

第一步注册

因为我们没有企业,所以我们选择组织。

提示:这里简单的说一下,微信企业号和微信公众号是不一样的!

继续下一步

提示一下: 因为这步需要添加管理员的身份证号以及手机号,我这里就不截图了

 

二、配置微信企业号

当我们设置完微信号的信息之后,请继续跟我操作。中间可能步骤不是特别全,就是设置企业的信息

我们需要记录CorpID

我们点击通讯录,添加一个组,或者添加一个成员。成员可以使用微信邀请或者短信邀请,我扫码添加自己的时候微信这个坑比给我下载一个企业微信。很尴尬,微信变了。不单纯了

添加完管理员需要记录管理员账号

我们添加成员需要记录成员ID

点进去

记录用户账号

点击企业应用,新增应用

设置应用

同样也可以在微信插件里面二维码邀请关注加入通讯录

创建完成后
需要记录Agentld、Secret

以前的应用ID和组ID已经被取消

 

准备事项:

微信企业号
企业号已经被部门成员关注
企业号有一个可以发送消息的应用,一个授权管理员,可以使用应用给成员发送消息

 

需要得到的信息

 
  1. 记录用户的账号
  2. CorpID和Secret、Agentld
 

三、修改Zabbix.conf

 
  1. [root@abcdocker ~]# grep alertscripts /etc/zabbix/zabbix_server.conf
  2. AlertScriptsPath=/usr/lib/zabbix/alertscripts
  3. 我们设置zabbix默认脚本路径,这样在web端就可以获取到脚本
 

四、设置脚本

下载脚本
url已失效,请使用云盘下载
链接:http://pan.baidu.com/s/1skXgaKl 密码:xz09

 
  1. [root@abcdocker alertscripts]# pwd
  2. /usr/lib/zabbix/alertscripts
  3. [root@abcdocker alertscripts]# rz #如果没有rz可以使用yum install lrzsz 安装rz
  4. [root@abcdocker alertscripts]# chmod 755 wechat
  5. [root@abcdocker alertscripts]# chown zabbix:zabbix wechat

执行脚本,进行测试

 
  1. [root@abcdocker alertscripts]#./wechat --corpid=wwcxxxxxxxxxxxxxxxx --corpsecret=Q-HMnIo9HKX8kZwbT4m1SUcS-kmYhmiuRgr4DCLreQA --msg="您好,告警测试"--user=CongYuHong--agentid=1000002
  2. {"errcode":0,"errmsg":"ok","invaliduser":""}
  3. 提示:
  4. --corpid=我们企业里面的id
  5. --corpsecret=这里就是我们Secret里面的id
  6. -msg=内容
  7. -user=我们邀请用户的账号
  8. 因为脚本是编译过的,无法进行编辑,我们可以使用./wechat -h or--help 查看

 

五、zabbix web 界面配置

创建报警媒介

 
  1. --corpid=我们企业里面的id
  2. --corpsecret=这里就是我们Secret里面的id
  3. --agentid=Agentld ID
  4. --user={ALERT.SENDTO}
  5. --msg={ALERT.MESSAGE}

这里是和旧版本的区别

创建报警用户

这里填写微信收件人的账号

设置报警动作

报警消息设置如下:

 
  1. hostname:({HOST.NAME}
  2. Time:{EVENT.DATE}{EVENT.TIME}
  3. level:{TRIGGER.SEVERITY}
  4. message:{TRIGGER.NAME}
  5. event:{ITEM.NAME}:{ITEM.VALUE}
  6. url:www.abcdocker.com

恢复报警如下:

 
  1. hostname:({HOST.NAME}
  2. Time:{EVENT.DATE}{EVENT.TIME}
  3. level:{TRIGGER.SEVERITY}
  4. message:{TRIGGER.NAME}
  5. event:{ITEM.NAME}:{ITEM.VALUE}
  6. url:www.abcdocker.com

报警配置如下

恢复配置如下

提示: 不要忘记先点小的add-->小的update-->Update

 

六、测试

为了验证效果我们停掉zabbix-agent,进行查看报警

 
  1. [root@abcdocker ~]# systemctl stop zabbix-agent

报警如下

我是把我网站停了让你们看结果的!

Zabbix微信告警的更多相关文章

  1. zabbix 微信告警配置

    作者信息 邮箱:sijiayong000@163.com Q Q:601566386 Zabbix 微信告警 摘要:Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是 ...

  2. zabbix微信告警实践

    首先你得有个企业号!!!具体操作步骤可以参考http://itnihao.blog.51cto.com/1741976/1733245,里面写的很详细就不重复了. 微信公众号注册并配置完成后,还需要让 ...

  3. zabbix 微信告警机制

    微信告警首先得注册一个企业微信,然后才能实现微信告警.自行百度 微信: 添加一个用户到上面创建的部门里面 创建完成记住 AgentID  和 Secret 下一步:记住企业 ID 1)编辑zabbix ...

  4. zabbix微信告警(虚拟机脚本测试成功,zabbix上收不到信息)

    前言: 使用zabbix直接运行脚本又可以正常接收.但是登录zabbix  web界面,测试!  动作显示已送达,但是微信并没有收到信息! 解决: 添加脚本参数,因为不添加脚本参数,调用不了你这个脚本 ...

  5. 6.zabbix微信告警3.2

    原文地址: https://blog.cactifans.com/2016/01/27/zabbix%E5%BE%AE%E4%BF%A1%E5%91%8A%E8%AD%A6/ pdf : 链接: ht ...

  6. zabbix 微信告警脚本

    #!/usr/bin/env python3 import requests import json import sys import os def access_token(Corpid,Secr ...

  7. 【zabbix】微信告警消息模版

    下面给出了一个zabbix微信告警消息的模版, 消息最后加上#号和短横线的设计有两个原因: 1,zabbix的微信告警消息总是被截断,比如最后一个告警时间,如果没有最后一行#号,在微信上看的时候时间不 ...

  8. Zabbix实现微信告警

    zabbix实现微信告警可以分为以下两个步骤: 在百度告警告警平台实现微信告警 将Zabbix接入百度告警平台 微信告警 实现微信告警只需要如下四步: 个人主页关注微信 升级策略配置微信告警 服务管理 ...

  9. zabbix python 微信告警脚本

    测试zabbix的微信告警耗费了大量时间,使用了开源工具(OneOaaS weixin-alert).shell脚本工具(手动执行正常,服务器调用失败),均没有实现相关功能以下是自己优化过的Pytho ...

随机推荐

  1. bzoj 1997: [Hnoi2010]Planar【瞎搞+黑白染色】

    脑补一下给出的图:一个环,然后有若干连接环点的边,我们就是要求这些边不重叠 考虑一下不重叠的情况,两个有交边一定要一个在环内一个在环外,所以把相交的边连边,然后跑黑白染色看是否能不矛盾即可(可能算个2 ...

  2. bzoj 3270: 博物馆【dp+高斯消元】

    好像是高斯消元解互相推(?)的dp的例子 首先考虑dp,设f[i][j]为一人在i一人在j的概率,点i答案显然就是f[i][i]: 然后根据题意,得到转移是 \[ f[i][j]=f[i][j]*p_ ...

  3. [App Store Connect帮助]七、在 App Store 上发行(3.3)提交至“App 审核”:解决 App 拒绝问题

    如果“App 审核”或“Beta 版 App 审核”拒绝了您的 App,您可以与 Apple 沟通并在解决方案中心中解决问题. 来自 Apple 的通讯信息包含有关 App 拒绝的信息,其中包括该 A ...

  4. java 学习书籍

    <Effective java> <深入理解java虚拟机> <Java并发编程实践> <Java Performance> <java解惑> ...

  5. B - Burning Midnight Oil CodeForces - 165B

    One day a highly important task was commissioned to Vasya — writing a program in a night. The progra ...

  6. 牛客网暑期ACM多校训练营(第五场)

    J-plan(贪心) 题目描述 There are n students going to travel. And hotel has two types room:double room and t ...

  7. Android偏好设置(3)启动偏好设置后显示的界面PreferenceActivity和PreferenceFragment

    Creating a Preference Activity To display your settings in an activity, extend the PreferenceActivit ...

  8. js中实现json格式的转换

    function person(id,name,age){ this.id=id; this.name=name; this.age=age; } var p=new person(1001,'tom ...

  9. overlaps the location of another project Zendstudio导入已经存在的目录

    转 http://blog.csdn.net/kdchxue/article/details/50633745 最近弄zendstuido导入已经存在的项目,找了很多地方终于找到了导入的方法,特别记录 ...

  10. 聊聊mq的使用场景

    mq的作用 通过异步方式对系统解耦 增加系统的并发处理能力 通过异步方式对系统解耦 以用户注册为例,一般情况下: 分下一下,上面过程存在的一些问题: 注册过程会调用4个服务(注册服务.邮件服务.短信服 ...