zabbix报警媒介------>微信报警

                                作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

欢迎加入高级运维工程师之路:598432640

微信在我们的生活中使用的比较频繁,有时候你们发现身上没带钱,照样可以购物啥的,之前我们介绍了zabbix监控媒介的一种方式就是

邮件报警,但是邮件报警可能我们不会及时看到相应的信息,因此,微信就是一个不错的媒介工具。哎~再实现监控报警的过程中是很痛苦的,

幸好我的一个贵人(曹艳飞)给我指点迷津,才有了今天的这篇文章,所以花点时间记录一下这个过程,希望大家不要踩坑了。

一.申请微信公众号

1.根据官网的提示注册一个微信公众号。

https://qy.weixin.qq.com/

2.选择企业号

3.填写相应的信息

4.绑定一个手机号

5.注册成功

6.添加一个成员,到时候监控的消息会发到这个用户上的

7.创建应用中心

8.创建一个管理者用户

9.微信接口调用

微信企业号接口调试地址: http://qydev.weixin.qq.com/debug

调用微信接口需要一个调用接口的凭证:access_token

通过CorpID和Secret可以获得access_token

zabbix服务器端配置

1.修改配置文件,在配置文件添加报警脚本路径的存放位置

[root@yinzhengjie ~]# vim /usr/local/zabbix/etc/zabbix_server.conf

添加下面的一行,请根据你的实际安装情况来确定路径哟:

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

[root@yinzhengjie ~]# /etc/init.d/zabbix_server restart

添加完毕重启服务

2.编写发送微信的shell脚本

[root@yinzhengjie ~]# cd /usr/local/zabbix/share/zabbix/alertscripts

[root@yinzhengjie alertscripts]# more weixin.sh
#!/bin/bash

CropID='wxc1d03e690e8df6dc'  //这个地方是你的corpid

Secret='EcVKMs5QikQc60P0D5qrgyhl3bo9F0Rn4x6NnRADWhy_3EONshXa197MCkbyXy_j'  //这个地方是你的corpsecret,这个和上面的cropID跟你您的实际情况修改

GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}')

PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"

function body() {
local int AppID=3     //此处是企业号中的应用id,你需要根据你的实际情况来定。
local UserID=$1
local PartyID=1
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": "'" $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

[root@yinzhengjie alertscripts]#

如何查看你的应用ID

3.在zabbix的web端配置报警媒介

1>.添加报警媒介

2>.配置用户

3>.定义发件人和报警媒介类型

4>.点击更新

4.定义action

1>.开启恢复告警提示

2>.添加想匹配的action的触发器

3>.定义具体操作步骤

在仪表盘中查看短信的发送结果

好了,以上就是服务器设置的过程,下面。看看你的微信是否收到报警了吧

zabbix报警媒介------>微信报警的更多相关文章

  1. 配置zabbix通过微信报警企业微信报警

    如今势态: 报警的方式可谓是八仙过海各显神通,如电话报警,短信报警,邮件报警,QQ报警,微信报警等等. 电话报警:一般都是使用别的平台的工具,平台给你提供一个接口供你使用,大多数为限量收费款 短信报警 ...

  2. elasticsearch5之Elastalert 安装使用 配置邮件报警和微信报警

    简介 Elastalert是用python2写的一个报警框架(目前支持python2.6和2.7,不支持3.x),github地址为 https://github.com/Yelp/elastaler ...

  3. Centos7下zabbix部署(五)定义报警媒介-微信

    1.注册微信 注册过程参考地址:https://www.cnblogs.com/hanyifeng/p/5368102.html 主要需要以下一些信息 CorpID :     wwxxxxxxxxx ...

  4. zabbix如何实现微信报警 转载

    现实生产环境中,我们通常使用邮件和短信接受zabbix报警信息,但是邮件经常被工作人员搁置在角落中甚至被设置为垃圾邮件被过滤掉.公司的短信接口又太贵,复杂环境中使用短息报警会使运维成本增加很多.微信提 ...

  5. zabbix监控,微信报警

    微信告警 访问这个地址创建企业微信   https://work.weixin.qq.com/  

  6. zabbix配置企业微信报警

    +++++++++++++++++++++++++++++++++++++++++ 1. 工作中最长使用的就是微信,普及,开源,而且免费!!! 2. 在企业微信中要记录的值: · 部门id · 企业i ...

  7. docker-compose 修改zabbix images 添加微信报警插件 时间同步 中文乱码 添加grafana美化zabbix

    我们先来看一下我们要修改得  zabbix.yaml           github   https://github.com/bboysoulcn/awesome-dockercompose ve ...

  8. zabbix 邮件报警和微信报警

    # 邮件报警 一.定义邮件发件人 #密码来源 完成操作会看到 二.定义邮件收件人 三.启动动作 #先开启 2.触发操作 3.恢复操作 4.开启发送消息 1.2. 微信报警 一. 首先要注册一个企业微信 ...

  9. Zabbix--03 邮件报警、微信报警

    目录 一. 邮件报警 1.定义发件人 2.定义收件人 3.优化告警信息 二. 微信报警 1.查看配置文件里的脚本目录路径 2.将weixin.py放在zabbix特定目录 3.配置发信人 4.配置收信 ...

随机推荐

  1. USACO 5.5 Hidden Password(搜索+优化)

    水了好几下. 优化1:开始初始化的时候,如果左边那个也是最小值,那么此点就不用进队了. 优化2:如果队列里的位置,已经超过了后面位置的初始位置,那么后面这个位置也没用了. /* ID: cuizhe ...

  2. Node.js的函数返回值

    先看一段代码: function select(sqlscript){     var result = "";     sql.connect(config, function( ...

  3. HDU3732 背包DP

    Ahui Writes Word Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  4. ArcGIS AddIN异常之:object reference not set to an instance of an object

    异常出现在 frmDownload frd = new frmDownload(); frd.ShowDialog(); 在ArcMap中能正常弹出窗体,点击按钮时显示此异常:object refer ...

  5. hdu-acm steps 免费馅饼

    /*dp入门级的题目,和数塔是一样的,这道题不用做什么优化,感觉时间复杂度不会超.主要还是细节上的问题, 这道题的状态和状态方程都容易找到,采用自底向上的方式会好很多*/ #include" ...

  6. UIBezierPath 的使用

    使用UIBezierPath类可以创建基于矢量的路径,这个类在UIKit中.此类是Core Graphics框架关于path的一个封装.使用此类可以定义简单的形状,如椭圆或者矩形,或者有多个直线和曲线 ...

  7. Java之方法重载(笔记)

    Java是根据参数类型和个数的不同实现重载. 1.当参数类型是基本类型,但不完全匹配. void test(int i) { } void test(float f) { } public stati ...

  8. JavaScript 入门教程二 在HTML中使用 JavaScript

    一.使用 <script> 元素的方式有两种:直接在页面中嵌入 JavaScript 代码和引用外部 JavaScript 文件. 二.使用内嵌方式,一般写法为: <script t ...

  9. ThinkPHP 3.2.3 关联模型的使用

    关于关联模型 ThinkPHP 3.2.3 的关联模型(手册地址)一般处理关联数据表的 CURD 操作,例如关联读取.关联写入.关联删除等. 实例 博客管理模块关于博客有 4 张数据表:博客表 crm ...

  10. 多维数组问题 int (*a)[] int []

    今天做调整方阵这道题: 第一遍提交没有通过, 又gdb 重新温故了 交换二维数组中的两行数据: void swap(int *a, int *b) { int t = *a; *a = *b; *b ...