zabbix实现企业微信报警

1、下载安装手机版企业微信
2、注册账户,并创建一个企业,之后向企业中添加员工
3、找到我的企业—>记录企业ID:ww1d1845f4b25a12fb

4、在企业下创建部门,并记录部门ID:3

5、创建应用,并记录应用ID和secret,ID:1000003,secret:ItmpP6TjPNvx6aSlvRCYrkgK5BPWiqTrMf3xhKjUnLo

6、编写python脚本,将上面记录的信息填到对应地方(脚本在zabbix-server服务器中)

[root@zabbix-server ~]# vim /usr/lib/zabbix/alertscripts/wechat.py

脚本内容为:

#!/usr/bin/env python
# -*- coding: utf-8 -*-import urllib,urllib2,json
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )
class WeChat(object):__token_id = ''# init attributedef __init__(self,url):self.__url = url.rstrip('/')self.__corpid = 'ww1d1845f4b25a12fb'self.__secret = 'ItmpP6TjPNvx6aSlvRCYrkgK5BPWiqTrMf3xhKjUnLo'# Get TokenIDdef authID(self):params = {'corpid':self.__corpid, 'corpsecret':self.__secret}data = urllib.urlencode(params)content = self.getToken(data)try:self.__token_id = content['access_token']# print content['access_token']except KeyError:raise KeyError# Establish a connectiondef getToken(self,data,url_prefix='/'):url = self.__url + url_prefix + 'gettoken?'try:response = urllib2.Request(url + data)except KeyError:raise KeyErrorresult = urllib2.urlopen(response)content = json.loads(result.read())return content# Get sendmessage urldef postData(self,data,url_prefix='/'):url = self.__url + url_prefix + 'message/send?access_token=%s' % self.__token_idrequest = urllib2.Request(url,data)try:result = urllib2.urlopen(request)except urllib2.HTTPError as e:if hasattr(e,'reason'):print 'reason',e.reasonelif hasattr(e,'code'):print 'code',e.codereturn 0else:content = json.loads(result.read())result.close()return content# send messagedef sendMessage(self,touser,message):self.authID()data = json.dumps({'touser':touser,'toparty':3,'msgtype':"text",'agentid':"1000003",'text':{'content':message},'safe':"0"},ensure_ascii=False)response = self.postData(data)print responseif __name__ == '__main__':a = WeChat('https://qyapi.weixin.qq.com/cgi-bin')a.sendMessage(sys.argv[1],sys.argv[3])

7、修改权限

[root@zabbix-server ~]# chmod 777 /usr/lib/zabbix/alertscripts/wechat.py
[root@zabbix-server ~]# chown zabbix:zabbix /usr/lib/zabbix/alertscripts/wechat.py

8、在zabbix-server端进行脚本测试

[root@zabbix-server alertscripts]# /usr/lib/zabbix/alertscripts/wechat.py ZhangYu test hellohellohello
root@zabbix-server alertscripts]# /usr/lib/zabbix/alertscripts/wechat.py ZhangYu www helphelphelp

注意:ZhangYu是在企业微信中的用户名。

机上收到信息说明脚本正常使用。

8、在zabbix-server的web界面中创建报警媒介


9、为用户添加告警媒介(可以新建用户,也可以直接使用管理员账户admin),让这个用户关联告警媒介,并添加收件人

注意:类型(创建的告警媒介)、收件人(企业微信中的那个用户)

10、创建动作,实现企业微信告警(当有触发器被触发时,发送告警给特定用户)

定义动作:使用触发器,触发器自己定义,我这里用的是之前为了监控nginx运行状态创建的触发器。

定义操作:当动作被触发后,将会进行设置好的操作


发送消息的内容:
默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
默认信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

11、验证
当触发器被触发时,企业微信收到了告警信息

Zabbix实现企业微信报警相关推荐

  1. 公司内服务器微信报警怎么做,Zabbix 结合企业微信实现微信报警功能

    Zabbix 结合企业微信实现微信报警功能 一.Zabbix 概述 二.部署 Zabbix 结合企业微信报警 1.注册企业微信 2.配置企业微信 1)创建部门 2)添加成员 3.创建应用 4.配置监控 ...

  2. Zabbix 结合企业微信实现微信报警功能

    Zabbix 结合企业微信实现微信报警功能 一.Zabbix 概述 二.部署 Zabbix 结合企业微信报警 1.注册企业微信 2.配置企业微信 1)创建部门 2)添加成员 3.创建应用 4.配置监控 ...

  3. Zabbix监控通过企业微信报警

    随着网络技术的发展,作为开发人员,虽然现在运维人员的分类越来越细致,但是知道监控系统还是非常有必要的. 今天简单介绍一下我们线上环境使用的监控系统zabbix,zabbix的报警媒介支持很多种,zab ...

  4. zabbix4.0添加mysql报警_Zabbix 3.4.3实现企业微信报警

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

  5. zabbix如何实现微信报警

    关于zabbix如何实现微信报警,这篇博客写的非常详细 [全网首发]zabbix如何实现微信报警 - 铜锣湾 - 51CTO技术博客 http://wuhf2015.blog.51cto.com/82 ...

  6. zabbix监控-企业微信webhook告警并使用markdown格式

    zabbix监控-企业微信webhook告警并使用markdown格式 最终告警样式: markdown格式与text格式的优点:文字排版清晰,可对不同文字标识颜色,大小等. 此方法使用zabbix提 ...

  7. Zabbix配置企业微信群聊机器人告警

    转载来源 : Zabbix配置企业微信群聊机器人告警 : https://www.jianshu.com/p/b5b1f92b1f15 最近在给内部使用的zabbix配置告警发送,要求是使用企业微信群 ...

  8. AlertManager实现企业微信报警(十三)

    AlertManager实现企业微信报警 1.AlertManager对接企业微信 ALertManager支持的报警方式有邮件报警.钉钉报警.微信报警,本次将实现企业微信报警 2.企业微信配置 2. ...

  9. Prometheus配置企业微信报警

    Prometheus配置企业微信报警 更多技术博客,请关注微信公众号:运维之美 Prometheus被号称是下一代的监控,可以解决云上K8S集群的监控问题,搭配部署alertmanager,可以实现告 ...

最新文章

  1. 加解密基础——(对称加密、非对称加密和混合加密)
  2. -bash: ./demoapp: 无法执行二进制文件 问题解决
  3. Angular - angular2升级到angular8
  4. 数据库恢复相关知识笔记
  5. Ubuntu18.04 安装搜狗输入法后无法启动的问题
  6. Zedboard安装桌面系统ubuntu及opencv(2)
  7. C# 委托的三种调用示例(同步调用 异步调用 异步回调)
  8. Python 爬虫实例(10)—— 四行代码实现刷 博客园 阅读数量
  9. java并发-独占锁与共享锁
  10. Linux系统数据文件和信息
  11. Tortoise 账号和密码设置
  12. c语言中strcat函数的作用,strcat函数的作用是什么?
  13. iPhone预计移除SIM卡槽,用户需通过eSIM激活网络
  14. Python连锁药店营业额数据分析实验
  15. Linux命令 - who命令
  16. ipc4 - A 转换AV号(avtobv)
  17. Sixth season fifteenth and sixteenth episode,things that could have been......(没有如果)
  18. 网线使用指南(如何买网线?怎么接网线?怎么修网线?)
  19. java中的失败重试机制总结
  20. JS 获取某个时间距离现在时间有多少时分秒

热门文章

  1. 《点燃我,温暖你》爱心代码复现
  2. html模拟点击某个键盘按钮,如何使用JavaScript模拟按键或单击?
  3. xps in html5,XPS and OXPS file support in Windows 7 and Windows 8
  4. 在用户输入手机号或者要求输入纯数字时,输入法自动切换到数字的代码
  5. Android 项目必备(五)--> Android Studio 制作 App 的 logo 图标
  6. 什么是spring框架?spring框架的好处?
  7. sqlite 简明教程
  8. 10款iOS高效开发必备的Objective-C类库(转)
  9. 物体识别桌 开发系列之一
  10. iOS开发之Crash分析,以及收集