zabbix配置2018版本微信报警

centos6.5中微信报警需要Python2.7版本之上,由于服务器是centos6.5。所以需要升级版本2.6到2.7.

具体升级步骤:Python升级版本2.6到2.7

一、微信企业号申请

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

注册企业微信:

需要一个绑定银行卡的微信

主要流程如下:
 1.创建微信用户成员。
 2.创建应用,这是关键,如果是刚申请的公众号,创建的第一个应用ID 为1 (现在升级后的企业微信创建的应用ID为1000002)。
 3.创建应用管理组,添加组成员(也就是设置哪些用户可以接收到报警的通知信息)。
 4.创建成功后需要获取到以下信息:CropID  和Secret 当然还包括创建的用户信息。
  申请企业微信,创建对应的组成员这些就不介绍了,按照注册向导创建即可,主要写下创建应用获取应用Secret 和CorpID

主要找到 AgentId 和 Secret 和CorpID,部门id

注册成功后,进入管理后台

以下举个例子做为概述

1)选择企业应用------创建应用 对应范围选择自己的部门。

2)创建成功后就可以看到该应用的 AgentId 和 Secret

3)CorpID 需要在【我的企业】-【企业信息】中获取

4)部门ID 很隐蔽,在【通讯录】-左侧部门列表 点击查看

综上所述可以获得

部门id

AgentId

Secret

CorpID

二、zabbix 脚本创建

vim /usr/local/zabbix/alertscripts/weixin.sh

 #!/bin/bash
CropID='**********************'
#填写我们的应用CropID
Secret='**********************************'
#应用的Secret,下面的GURL和PURL 地址无需变动
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
#Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}')
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $10}')
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken" function body() {
local int AppID= #这里是创建的应用ID,AgentId
local UserID=$ #接收消息用户,我们在部门里面添加的用户,如果有其他人,用逗号代替
                        部门成员id,zabbix中定义的微信接收者
local PartyID= #接收消息的部门ID,定义了范围,组内成员都可接收到消息。
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

脚本设置权限和所属用户

chown zabbix.zabbix weixin.sh

chmod 744 weixin.sh

第三、微信接口调用

调用微信接口需要一个调用接口的凭证:access_token
通过CorpID和Secret可以获得access_token
微信企业号接口调试地址: http://qydev.weixin.qq.com/debug

手动测试脚本能否正常发信,测试的账号由于在脚本里未写明,观察到微信能正常收到测试信息:

比如说在后台下有一个添加的用户是syp,该用户在添加进入部门前会

在微信上添加该用户,并且会下载企业微信,并关注(必须的,否则会接受不到消息)

bash weixin.sh  syp test test

[root@localhost alertscripts]# ./weixin.sh syp test test
{"errcode":0,"errmsg":"ok","invaliduser":""}[root@localhost alertscripts]#

在zabbix的web界面进行配置

接着开始登陆zabbix,添加报警设置(跟邮件报警的配置差不多)

1)创建报警媒介(这里我选用python脚本:weixin.py,如果选用shell脚本,就改换weixin.sh。其他设置都不变!)

注意下面要填写的脚本参数:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

2)创建用户weixin(密码一栏可以选择跟之前的超级管理员zabbix一样的密码;用户类型也可以设置成超级管理员)

这里最好使用微信企业号的应用ID,AgentId.用户账号。这里只需要填写一个账号即可。zabbix的web界面里发信是按照应用ID,只要关注这个微信企业号内的用户都会收到报警邮件

这样发的报警信息,在企业号内的用户都能收到。或者添加任意一个用户账号(比如syp1111111111),切不可添加多条,否则就会收到重复信息。

3)创建动作

注意严格下面的微信发送格式:
上面的默认接收人填写:{TRIGGER.STATUS}: {TRIGGER.NAME}

默认信息和恢复信息要填写一样的内容,如下:
告警主机:{HOST.NAME}
主机IP: {HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态: {TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID: {EVENT.ID}

如下,在“条件”里可自主选择添加“主机”和“模板”(具体可参考上一篇的“zabbix邮件报警”的此步设置)

下面的“操作”(具体说明可参考上一篇的“zabbix邮件报警”的此步设置)。
下面设置的报警信息只发送给weixin用户就行了,没有发生给用户组。

注意:“操作”底部的“条件“做如下设置(时间已确认=非确认),这个别忘了!

这样,就顺利创建了一个名为“weixin”的动作

测试,将其中一台被监控机器(192.168.1.25)的zabbix-agent服务关掉,观察微信是否能正常收到报警信息:
经测试,报警信息(3次)和恢复后的信息(1次),微信都能正常收到。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
要追加用户的微信监控,只需要将用户添加到相关应用关联到的对应部门里即可!其他配置都不需要动。

zabbix的配置之新版微信报警(二)的更多相关文章

  1. 通过脚本发送zabbix微信报警

    实现zabbix通过微信报警的方式也是通过脚本来实现,与邮件报警不同的是,脚本调用的微信的相关接口的获取相对复杂一点 1.申请一个微信公众号(企业号) 申请方法不多说,如果已申请请忽略 2.在微信企业 ...

  2. zabbix利用微信报警

    一.背景介绍 报警的方式有很多种,比如常用的邮件报警,短信,微信等.那这篇文章主要是实现微信报警. 值得注意的是,之前使用微信企业公众号,现在微信企业公众号更新成企业微信了.所以直接注册企业微信,进入 ...

  3. zabbix配置微信报警

    首先我们先目睹下微信报警的效果 接下来我们正式开始操作. 一:注册企业微信. 打开企业微信注册:http://work.weixin.qq.com 根据以上提示填入相应的内容,然后注册即可. 二:登录 ...

  4. 总zabbix配置-搭建-邮件报警-微信报警-监控mysql

    Centos7安装Zabbix4.0步骤 官方搭建zabbix4.0的环境要求: 1. 环境搭建LAMP 前提Centos系统安装完成:  确认一下: 1 2 cat /etc/redhat-rele ...

  5. zabbix设置微信报警的配置过程

    zabbix设置微信报警的配置过程 转发:https://blog.csdn.net/qq_31613055/article/details/78831607 微信企业号的申请 注册的地址https: ...

  6. Zabbix配置微信报警通知

    Zabbix告警可以通过邮件,微信,电话,短信等方式发送告警消息. 电话和短信需要向运营商购买相应的网关,需要付费: 邮件和微信是免费的,可以根据业务需要选择相应的告警模式 Zabbix版本:3.2 ...

  7. Zabbbix之十二------Zabbix实现微信报警通知及创建聚合图形

    实战一:实现zabbix监控微信报警 1.在企业微信上注册账号 1.注册企业微信,管理员需要写上自己的真实姓名,扫描以下的二维码,与微信关联真实姓名. 2.登陆企业微信,然后创建一个微信故障通知应用 ...

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

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

  9. 部署zabbix,自动发现lnmp环境,监控主机状态,实现 邮件及微信报警(配置server端)

    二.配置server端监控 1.监控apache 首先在本机下载模板:https://github.com/rdvn/zabbix-templates/archive/master.zip  该 zi ...

随机推荐

  1. eclipse报错MA

    今天有个总监晒了张tomcat7.0崩溃忘记怎么搞了,大家都在吐槽"一个[总监](经常水群)竟然不会这个".敲上来. Problem Occurred系列: 'Starting T ...

  2. Grid Infrastructure 启动的五大问题 (文档 ID 1526147.1)

    适用于: Oracle Database - Enterprise Edition - 版本 11.2.0.1 和更高版本本文档所含信息适用于所有平台 用途 本文档的目的是总结可能阻止 Grid In ...

  3. CSS3制作的一款按钮特效

    /*.btn { width:230px; height:70px; font-size:70px; font-weight:bold; overflow:hidden; font: "He ...

  4. windows/Linux 常用命令

    windows 文件操作命令 cd 切换文件目录 dir 显示文件目录内容 md 创建文件夹 rd 删除文件夹 copy 拷贝文件 move 移动文件 del 删除文件 replace 替换文件 mk ...

  5. 利用kubeadm快速部署k8s

    内外网络互通 [root@k8s-1 ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 配置k8syum仓库,及Dock ...

  6. 屏蔽系统的Ctrl+c/x/v操作

    实现效果: 知识运用: KeyEventArgs类的Control, public bool Control {get;} //获取一个值 该值指示是否曾按下Ctrl键 KeyCode和Handled ...

  7. QR 分解

    将学习到什么 介绍了平面旋转矩阵,Householder 矩阵和 QR 分解以入相关性质.   预备知识 平面旋转与 Householder 矩阵是特殊的酉矩阵,它们在建立某些基本的矩阵分解过程中起着 ...

  8. java web.xml被文件加载过程及加载顺序小结

    web.xml加载过程(步骤): 1.启动WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> ...

  9. Python基础篇 -- 字符串

    字符串 字符串是不可变的对象,任何操作对原字符串是不会有任何影响的. 索引和切片 索引 . 索引就是下标, 下标从 0 开始, 使用[] 来获取数据 s1 = "0123456" ...

  10. virtualenvwrapper.sh报错: There was a problem running the initialization hooks.解决

    由于在ubuntu环境下,将python做与python3.6做了软链接(ln -s python python3.6),并且pip也被我做了软链接,所以导致用pip安装virtualenvwrapp ...