Zabbix 3.4.3之企业微信报警

一、企业微信注册

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

1、填写申请信息

2、下一步

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

二、企业微信配置

1、创建部门

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

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

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

2、给部门增加人员

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

3、添加应用

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

记住这里的Agentid和Secret。

4、获取企业ID

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

调用微信接口需要一个调用接口的凭证: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

调试成功页面如下。

四、报警脚本

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、测试脚本

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

五、Zabbix配置

1、添加Media types

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

2、给用户添加报警媒介

3、创建Action

服务器:{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。

时间: 2024-11-05 19:04:28

Zabbix 3.4.3之企业微信报警的相关文章

Zabbix通过网易邮箱、企业微信、钉钉整合实现实时告警

Zabbix可以通过多种方式将告警信息发送到指定人,常用的报警方式有邮件.微信.钉钉等.本次博文主要介绍这三种报警方式. 一.配置网易邮箱实现报警 本篇博文采用网易邮箱的方式实现报警!操作如下: zabbix server需进行以下配置: [[email protected] ~]# yum -y install perl-Net-SSLeay perl-IO-Socket-SSL //安装所需依赖 [[email protected] ~]# wget http://caspian.dotco

prometheus-operator 配置企业微信报警

prometheus-operator 配置企业微信报警1.安装prometheus-operator,具体安装步骤链接:https://www.qikqiak.com/k8s-book/docs/58.Prometheus%20Operator.html2.修改配置文件/root/prometheus-operator/kube-prometheus/manifestsvim alertmanager.yamlglobal:resolve_timeout: 60msmtp_smarthost:

zabbix之企业微信报警通知

一.背景介绍: 起初使用邮件报警,接收效果一直不好,需要打开邮箱才看到报警邮件.后来使用微信企业公众号,方便,省事,接收及时,可以做到第一时间相应.现在微信企业公众号更新成企业微信了.发送报警的方式有稍微改变.之前借用别人的脚本,密密麻麻.借此机会,自己写了个脚本与之分享. 二.实现步骤: 1.申请企业微信号 2.创建告警脚本 3.设置web管理界面触发脚本. 4.修改zabbix_server端配置文件.并重启 5.测试报警触发功能 6.完成 三.实施部署: 完成第一步:申请企业微信号: 地址

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

如今势态: 报警的方式可谓是八仙过海各显神通,如电话报警,短信报警,邮件报警,QQ报警,微信报警等等. 电话报警:一般都是使用别的平台的工具,平台给你提供一个接口供你使用,大多数为限量收费款 短信报警:一般是服务器安装串口GSM短信猫(也有其他平台提供这种接口),zabbix可以使用他来发送短信通知给管理员 邮件报警:一般是在server端安装邮件的客户端如sendEmail等,写脚本给zabbix进行调用,触发后发邮件给管理员 Q Q 报警:一般使用Mojo-Webqq的perl模板和cpan

Nagios通过企业微信报警

主要分两部分进行: 注册企业微信,自建应用,获取与发送消息相关的信息: 编写调用微信API脚本(bash),配置Nagios微信报警: 一.企业微信 1.注册企业微信:https://work.weixin.qq.com/,登录后在"我的企业"找到CorpID 2.创建应用,获取应用里,AgentId,Secret 3.在"通讯录"里,查看需要接受报警的部门id或者成员账号(非昵称) 二.服务器端配置 1.编写调用微信API脚本(bash)命名为set_to_wei

zabbix配置企业微信报警

+++++++++++++++++++++++++++++++++++++++++ 1. 工作中最长使用的就是微信,普及,开源,而且免费!!! 2. 要记录的值: · 部门id     · 企业id 原文地址:https://www.cnblogs.com/wwchihiro/p/11238749.html

python实现调用企业微信报警

代码部分 vim wechat.py #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hou Xingbin import urllib import json import sys import time from wechat_conf import CorpID, Agentid, Secret localtime = time.strftime("[%H:%M:%S]", time.localtime()) dl=&q

shell脚本实现企业微信报警

function sendmsg() { CorpID="ww3c6298264d839e2f"Secret="YvyMQpMRIoXtdQRWo0RNkMBTZnHWKvBwC3ILkyuCsKQ"agentid=1000002 GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CorpID&corpsecret=$Secret"Gtoken=$(/usr/bin/cu

Zabbix监控客户端及实现邮件、微信报警

博文大纲:一.安装Zabbix agent端二.登录web界面添加agent主机三.Zabbix监控MySQL数据库四.配置邮件报警五.配置企业微信报警 注:本文是基于博文:部署zabbix监控服务器 的环境. 这篇博文用到的所有软件都可以在这个链接获得:Zabbix 软件包 一.安装Zabbix agent端 这里我启动了一台IP为192.168.20.3的服务器,用于充当agent端. [[email protected] ~]# tar zxf zabbix-3.2.1.tar.gz -C