文档章节

Zabbix 3.4.3实现企业微信报警

l
 linjin200
发布于 2018/06/14 10:37
字数 1153
阅读 83
收藏 0

Zabbix 3.4.3实现企业微信报警

[日期:2017-11-08] 来源:Linux社区  作者:wzlinux [字体:  ]

 

一、企业微信注册

   微信的报警方式可以让我们随时随地接收到信息,加快问题的处理,比传统邮件更加方便,首先我们先打开企业微信的地址 https://work.weixin.qq.com

1、填写申请信息

Zabbix 3.4.3实现企业微信报警

2、下一步

    根据注册流程步骤进行后面的操作,直到注册成功。

二、企业微信配置

1、创建部门

    首先我们要创建部门,类似于组,把相关的人员放到这个部门里面,创建部门之后,我们会用到部门id,报警消息根据部门id发到部门的相关人员。

03fec13df11741fca6305f5d72c89962.png

    根据自己的需求填写,所属部门也可以是现有部门的子部门,具有层级所属关系。

Zabbix 3.4.3实现企业微信报警

    查看部门id,我们以后会用到,我这里部门id是2。

Zabbix 3.4.3实现企业微信报警

2、给部门增加人员

    点击添加成员,然后让用户关注就可以了。

Zabbix 3.4.3实现企业微信报警

3、添加应用

    用于消息发送的接口,这里我们需要记住应用的id以及secret,用于发送token的获取,按照我们的设定,目前只有运维部的人员可以看到此应用,即可以通过此应用获取到报警信息。

Zabbix 3.4.3实现企业微信报警

    记住这里的Agentid和Secret。

Zabbix 3.4.3实现企业微信报警

4、获取企业ID

Zabbix 3.4.3实现企业微信报警

三、测试微信消息发送接口

    调用微信接口需要一个调用接口的凭证:access_token,通过CropID 、Secret才能获取到access_token,但是获取到的token有效期为7200秒。

    我们可以通过下面的接口调试工具以及接口说明文档进行测试。

接口调试工具:http://work.weixin.qq.com/api/devtools/devtool.php

接口说明文档:https://work.weixin.qq.com/api/doc#10167

    调试成功页面如下。

Zabbix 3.4.3实现企业微信报警

四、报警脚本

1、编写python脚本

     脚本使用的python版本为2.7以上,所以请安装CentOS 7。

vim /usr/local/zabbix/alertscripts/wechat.py 

#!/usr/bin/python

# -*- coding: utf-8 -*-

# zabbix notification confirmation script

# python2.7 or above

  

import requests

import json

import os

import sys

  

Toparty = "2"   #部门id

AgentID = 4     #应用id

  

#修改为企业CropID和Secret

CropID = 'wx8d46d3xxxxx993'

Secret = 'QCjzy2lH2ZB7MUG6uowChyChPsOxxxxxxxxxxxxxxTVR4saIw3Ezznh'

  

#获取Token

Gtoken ="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid="+ CropID + "&corpsecret=" + Secret

headers = {'Content-Type''application/json'}

json_data = json.loads(requests.get(Gtoken).content.decode())

token = json_data["access_token"]

  

#消息发送接口

Purl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + token

  

#消息发送函数

def msg(title,message):

    weixin_msg = {

         "toparty" : Toparty,

         "msgtype" "textcard",

         "agentid" : AgentID,

         "textcard" : {

             "title" : title,

             "description" : message,

             "url" "www.wzlinux.com",

             "btntxt":"更多"

          }

      }

    print requests.post(Purl,json.dumps(weixin_msg),headers=headers)

  

if __name__ == '__main__':

    title = sys.argv[1]        #获取第一个参数

    message = sys.argv[2]      #获取第二个参数

    msg(title,message)

 

 

chmod +x /usr/local/zabbix/alertscripts/wechat.py

2、测试脚本

f4f6ab1f20d5e3db303b72c97af9edb2.png

    微信已经可以接收到消息,那脚本已经没有什么问题了。

五、Zabbix配置

1、添加Media types

    首先需要在zabbix server的配置文件开启上面脚本的目录,然后才可以使用,我们添加两个参数,一个是报警的标题,一个是报警信息的内容,用于传给脚本的两个参数。

Zabbix 3.4.3实现企业微信报警

2、给用户添加报警媒介

Zabbix 3.4.3实现企业微信报警

3、创建Action

Zabbix 3.4.3实现企业微信报警

服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!

{

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

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

事件ID:{EVENT.ID}

}

   

   

服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!

{

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

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

恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}

持续时间:{EVENT.AGE}

事件ID:{EVENT.ID}

}

   

   

服务器:{HOST.NAME}: 报警确认

{

确认人:{USER.FULLNAME} 

时间:{ACK.DATE} {ACK.TIME} 

确认信息如下:

"{ACK.MESSAGE}"

问题服务器IP:{HOSTNAME1}

问题ID:{EVENT.ID}

当前的问题是: {TRIGGER.NAME}

}

六、报警测试

    关掉zabbix agent。

Zabbix 3.4.3实现企业微信报警

更多Zabbix相关教程集合: 

Ubuntu 16.04服务器上安装Zabbix 3.2  http://www.linuxidc.com/Linux/2017-07/145519.htm 

CentOS 7 LNMP环境搭建Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140134.htm 

Ubuntu 16.04安装部署监控系统Zabbix2.4  http://www.linuxidc.com/Linux/2017-03/141436.htm 

Zabbix监控安装部署及警报配置  http://www.linuxidc.com/Linux/2017-03/141611.htm 

Zabbix触发器表达式详解 http://www.linuxidc.com/Linux/2017-03/141921.htm 

Ubuntu 16.04下安装部署Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140395.htm 

CentOS 6.3下Zabbix监控apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm 

CentOS 7 下 Zabbix 3.0安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm 

CentOS 7.4 安装Zabbix 3.4  http://www.linuxidc.com/Linux/2017-09/147202.htm

64位CentOS 6.2下安装Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm 

ZABBIX 的详细介绍请点这里
ZABBIX 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-11/148418.htm

© 著作权归作者所有

l

linjin200

粉丝 26
博文 1005
码字总数 1170031
作品 0
福州
程序员
私信 提问
Zabbix 3.4.3实现企业微信报警

Zabbix 3.4.3实现企业微信报警 [日期:2017-11-08] 来源:Linux社区 作者:wzlinux [字体:大 中 小] 一、企业微信注册 微信的报警方式可以让我们随时随地接收到信息,加快问题的处理,比传统...

linjin200
2018/06/13
34
0
Zabbix 3.4.3之企业微信报警

一、企业微信注册 微信的报警方式可以让我们随时随地接收到信息,加快问题的处理,比传统邮件更加方便,首先我们先打开企业微信的地址 https://work.weixin.qq.com 1、填写申请信息 2、下一步...

wzlinux
2017/11/04
0
0
Zabbix-3.2.3实现微信(WeChat)告警

Zabbix-3.2.3实现微信(WeChat)告警 Zabbix-3.2.3实现微信(WeChat)告警  Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbi...

Abcdocker
2017/04/17
0
0
Zabbix分布式监控微信报警实战

作为运维工程师,最重要的事情就是保证该网站正常稳定的运行,需要实时监控网站、服务器的运行状态,并且有故障及时去处理。 监控网站无需人工时刻去访问WEB网站或者登陆服务器去检查, 可以...

wgkgood
2017/05/25
0
0
Zabbix-3.2.3实现微信(WeChat)告警

Zabbix-3.2.3实现微信(WeChat)告警 Zabbix-3.2.3实现微信(WeChat)告警  Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbi...

qq58fc726f40796
2017/04/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JS实现使用Math.random()函数生成n到m间的随机数字

Math.random()函数返回0和1之间的伪随机数,可能为0,但总是小于1,[0,1) 生成n-m,包含n但不包含m的整数: 第一步算出 m-n的值,假设等于w 第二步Math.random()*w 第三步Math.random()*w+n...

张兴华ZHero
23分钟前
4
0
入门了解Service Mesh + Istio?从本文开始

下周六,深圳,阔别已久的线下技术沙龙要和你见面啦! 现场有Rancher Labs研发经理demo刚刚发布的Rancher 2.3中的Istio、Windows容器、集群模板等功能及使用,还有k3s首次线下workshop,由R...

RancherLabs
24分钟前
4
0
Gradle 发布 Jar 到 Archiva 时提示不能 Overwriting released artifacts is not allowed

系统提示错误信息: Received status code 409 from server: Overwriting released artifacts is not allowed. 这是在 Archiva 默认的配置下如果你不是使用 snapshot 配置的话,是不允许对仓...

honeymoose
25分钟前
4
0
二维码插件之qrcode.min.js

文件链接百度云地址 https://pan.baidu.com/s/1nWiBuT4Z7WOAMoUEFL8PZg 入门 http://www.jq22.com/jquery-info294 使用jquery.qrcode.min.js实现前台二维码生成(带Logo) https://blog.csd......

木九天
35分钟前
3
0
开源 java CMS - FreeCMS2.8 自定义标签 commentPage

项目地址:http://www.freeteam.cn/ commentPage 根据参数提取评论对象。 参数 说明 siteid 站点id objtype 评论对象类型 objid 评论对象id membername 会员名称 isanonymous 是否匿名 1是 ...

freeteam
35分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部