Zabbix告警可以通过邮件,微信,电话,短信等方式发送告警消息。

电话和短信需要向运营商购买相应的网关,需要付费;

邮件和微信是免费的,可以根据业务需要选择相应的告警模式

Zabbix版本:3.2

部署前准备工作:

先申请一个微信企业号:https://qy.weixin.qq.com
申请通过后 登录 该企业号

注:每个企业号有发送消息限制,据说是有消息数限制的

一、申请企业微信账号,并创建应用:

主要流程如下:

  • 创建微信用户成员。
  • 创建应用,这是关键,如果是刚申请的公众号,创建的第一个应用ID 为1 (现在升级后的企业微信创建的应用ID为1000002)
  • 创建应用管理组,添加组成员(也就是设置哪些用户可以接收到报警的通知信息)
  • 创建成功后需要获取到以下信息:CropID  和Secret 当然还包括创建的用户信息。  

申请企业微信,创建对应的组成员这些就不介绍了,按照注册向导创建即可,主要写下创建应用获取应用Secret 和CorpID

  • 选择【企业应用】-【创建应用】 对应范围选择自己的部门。

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

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

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

二、zabbix 脚本创建

  • 创建微信报警脚本
root@evescn:~# cat /etc/zabbix/alertscripts/weixin.sh
#!/bin/bash
###SCRIPT_NAME:weixin.sh###
###send message from weixin for zabbix monitor###
###wuhf###
###V1-2017-09-12###CropID='XXXXXXXXXXXXXX'
Secret='XXXXXXXXXXXXXXXXXXXXXXXXX'
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
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=1                        #企业号中的应用idlocal UserID=$1                          #部门成员id,zabbix中定义的微信接收者local PartyID=1                          #部门id,定义了范围,组内成员都可接收到消息local Msg=$(echo "$@" | cut -d" " -f3-)  #过滤出zabbix中传递的第三个参数printf '{\n'printf '\t"touser": "'"$User"\"",\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

  • 设置zabbix脚本运行路径,并把报警脚本放于该目录下
root@evescn:~# grep "^[^#]" /etc/zabbix/zabbix_server.conf
......
AlertScriptsPath=/etc/zabbix/alertscripts
......

  • 脚本设置权限和所属用户
root@evescn:~# chown zabbix:zabbix /etc/zabbix/alertscripts/weixin.sh
root@evescn:~# chmod 744 /etc/zabbix/alertscripts/weixin.sh

三、设置监控动作和接收用户信息

  • 进入zabbix后台,选择【管理】-->【报警媒介类型】--> 创建媒介类型

  • 选择类型为:【脚本】,脚本名称为第二步中创建的脚本名称,并配置脚本参数(使用zabbix3.0以上版本此处必须配置脚本参数)

# 脚本参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

  • 选择【管理】-->【用户】--> 选择admin用户

  • 选择报警介质,点击添加按钮,关联上admin用户和weixin报警

  • 模拟测试,查看报警功能是否OK

四、贴上【配置】-->【动作】中配置的默认信息配置

服务器:{HOST.NAME}出现故障!服务器:{HOST.NAME}出现故障!\n
告警主机:{HOSTNAME1}
主机地址:{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警信息:{TRIGGER.NAME}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

服务器:{HOST.NAME}已恢复!服务器:{HOST.NAME}已恢复!\n
恢复主机:{HOSTNAME1}
主机地址:{HOST.IP}
恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
故障信息:{TRIGGER.NAME}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

文章转载自:https://www.cnyunwei.cc/archives/261

转载于:https://www.cnblogs.com/python-gm/p/7510163.html

Zabbix配置微信报警通知相关推荐

  1. zabbix配置微信报警

    前言:zabbix一般可以通过邮件以及脚本的方式进行告警,zabbix通过微信报警的方式也是通过脚本来实现 企业微信号内配置 自行申请企业号 在企业号内添加新应用 应用创建完之后查看并启用应用,同时会 ...

  2. (七)Zabbix实现微信报警通知

    目录 一.企业微信应用操作 1.注册企业微信 2.登陆企业微信,然后到应用管理创建一个zabbix告警机器人 3.查看应用的相关信息 4.添加成员 5.查看此时的管理员账号是姓名全拼,但首字母都是大写 ...

  3. zabbix===》微信报警、聚合图形、自动发现自动注册、监控NFS、MySQL、web服务、URL地址

    一.企业微信号申请 https://work.weixin.qq.com/ 1.注册 因为我们没有企业,所以我们选择组织. 下一步, 按需填好相应信息 2.配置微信企业号 设置好相应信息,后记录下企业 ...

  4. zabbix配置飞信报警

    zabbix配置飞信报警 最近在公司部署了一个zabbix对公司里的所有服务器.路由器进行实时监控,效果超过预期,大大提高了网络管理的工作效率. 不过貌似国内使用zabbix的用户不多,介绍使用fet ...

  5. zabbix如何配置微信报警

    zabbix支持多种报警机制,比如:邮件.短信.微信等等.下面就介绍如何使用微信报警. 使用微信报警必须得有企业微信账号,个人微信账号不行. 申请企业微信 注册地址:https://work.weix ...

  6. zabbix配置邮件报警和微信报警 配置自动发现和自动注册

    要求:1.配置zabbix邮件报警和微信报警. 2.配置zabbix自动发现和自动注册. 1.配置zabbix邮件报警 配置email 邮件测试 测试成功 收到邮件 创建用户 配置动作 2.微信报警 ...

  7. Zabbix设置微信报警

    Zabbix微信告警 企业微信注册地址:https://work.weixin.qq.com 登录进来的首页 设置总部门名称添加成员 创建应用 收集信息 部门ID AgentId和Secret ID ...

  8. zabbix php微信报警,Zabbix实现微信报警

    文章目录 [隐藏] 第一步.注册微信公众号 第二步.下载并配置微信公众平台私有接口 第三步.配置Zabbix告警 zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功 ...

  9. 服务器 微信报警平台,Zabbix实现微信报警

    zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统 ...

最新文章

  1. Linq-语句之Select/Distinct和Count/Sum/Min/Max/Avg
  2. 【渝粤教育】电大中专药事管理与法规作业 题库
  3. Web前端期末大作业--绿色自适应医疗健康医院网页设计(HTML+CSS+JavaScript+)实现
  4. 虽然我们可能不想对元素应用3D变换,可我们一样可以开启3D引擎
  5. jupyetr notebook添加anaconda虚拟环境内核(tensorflow+pytorch)
  6. python类方法和实例方法的区别_python中的类方法,实例方法和静态方法的区别
  7. ctab法提取dna流程图_每周实验新品:创新核酸提取技术、离心管自动打标设备...
  8. 好看的php表格样式,3款精美的css3 table表格样式设计
  9. 高淇python讲义百度文库_Python课堂笔记(高淇400集第一季).pdf
  10. 鲲鹏920服务器支持docker,鲲鹏云服务器上安装Dockerdocker-compose
  11. Landsat系列卫星数据应用介绍
  12. Win7 32 不能安装STM32 虚拟串口驱动解决方法
  13. 文章推荐列表(个人收藏)
  14. 公司电子邮箱可以定制邮箱地址吗?
  15. R语言logistic回归的细节解读
  16. TinyMCE富文本编辑器在Vue中的使用
  17. 元素周期表的118个化学元素
  18. linux上传本地文件
  19. shortcut详解
  20. 需求分析挑战之旅(疯狂的订餐系统)(7)——变被动为主动

热门文章

  1. C++ 出版公司(继承)
  2. php 自动生成查询密码,PHP自动生成随绝密码
  3. ArtRage中文版
  4. QTableview 获取鼠标坐标的item(QModelIndex)
  5. CentOS7路由、端口和服务排障常用命令
  6. 在网页中JS函数自动执行常用三种方法
  7. Jenkins搭建的几个坑记下
  8. 微软的公开的DLL库
  9. strong与em、q、cite、blockquote区别
  10. (转)jQuery插件:Image lazy loader图片延迟加载