美文网首页
zabbix实现微信告警

zabbix实现微信告警

作者: jie0112 | 来源:发表于2017-10-04 10:50 被阅读0次
什么是zabbix?

Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。
使用各种 Database-end 如 MySQL, PostgreSQL, SQLite, Oracle或 IBM DB2储存资料。Server 端基于 C语言、Web 管理端 frontend则是基于 PHP所制作的。Zabbix 可以使用多种方式监视。可以只使用 Simple Check 不需要安装 Client 端,亦可基于 SMTP 或 HTTP ... 各种协定做死活监视。在客户端如 UNIX, Windows 中安装 之后,可监视 CPU Load、网络使用状况、硬盘容量等各种状态。而就算没有安装 Agent 在监视对象中,Zabbix 也可以经由 SNMP、TCP、ICMP、利用 IPMI、SSH、telnet对目标进行监视。另外,Zabbix 包含 XMPP等各种 Item 警示功能。

实验环境
centos 7.3 (zabbix server) ip:192.168.18.131
centos 7.3 (zabbix agent) ip:192.168.18.105
zabbix 3.4(这里安装的是获取官网的yum仓库,从yum安装)
确保已安装zabbix_server 端和zabbix_agent 端(一个或多个agent端)

一、申请微信企业号

地址: https://qy.weixin.qq.com/


注:用于测试这里的企业名称可随便填写。这里绑定微信,则以后则可用微信登录。
注意登录以后我们要获取三个重要的参数:
分别是:
CropID、Secret、agentid!(以后编写脚本所用到,以便能从Linux传信息到微信中)
CropID:

Secret、agentid
这里的Secret、agentid不会默认就生成,是由自己创建企业应用得来!


到这里我们获取到了三个关键的参数!
二、脚本实现。

1.创建脚本。

[root@master alertscripts]#vim weixin.sh
#!/bin/bash

CropID='wwXXXXXXXXX883'  //这里填写企业CorpID
Secret='WR_XXXXXXXXXXXX17I9mt14'  //这里填写应用Secret
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
Gtoken=$(/usr/bin/curl  $GURL -H "DNT: 1" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: zh-CN,zh;q=0.8" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 BIDUBrowser/8.1 Safari/537.36" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8" -H "X-DevTools-Emulate-Network-Conditions-Client-Id: B546FC80-414C-403F-95F0-EB0F70E58EF7" -H "Connection: keep-alive" -H "Cache-Control: max-age=0" --compressed | awk -F \" '{print $10}')

PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"
function body() {
        local int appId=1000002   //这里填写应用AgentID
        local userId=$1
        local partyId=2
        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"\"
        printf '\n\t},\n'
        printf '\t"safe":"0"\n'
        printf '}\n'
}
body $1 $2 $3    
/usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL   //这里传三个参数

2.测试。
赋予脚本执行权限,属主属组,正确的路径!

[root@master alertscripts]#chmod +x weixin.sh
[root@master alertscripts]#chown zabbix.zabbix weixin.sh
[root@master alertscripts]#pwd
/usr/lib/zabbix/alertscripts

这里出现errcode":0,"errmsg":"ok","invaliduser":"123",表示没有问题!看下微信企业端是否收到消息!如果收到,则表示脚本可正常使用!



这里出现则表示企业微信可成功接收消息!

三、zabbix 设置!
1.登录zabbix,进入管理的报警媒介变量,创建报警媒介!


这里填入按个脚本参数。
{ALTER.SENDTO} # 发送给谁,该参数在邮件告警中有作用,但微信告警中没有
{ALTER.SUBJECT} # 告警标题,该参数在邮件告警中有作用,但微信告警中没有
{ALTER.MESSAGE} # 告警内容,在微信告警中有用

2.创建动作

创建动作之前首先添加监控主机!
填写主机名称、可见的名称、群组、agent代理程序的接口!


模板先可用内建的模板使用测试。[Template OS Linux]
添加动作!





在zabbix的控制面板查看zabbix状态!

出现以上信息基本没什么为题了!
四、测试

1.让zabbix的后端服务器关机看是否能发送警报!



web界面显示动作已完成,并发送了报警信息!我们查看手机客户端是否接收到消息!



这里已成功接收!
2.开启zabbix的后端服务器看是否能发送提醒消息!

已成功发送警报!



Trigger status:由原来的PROBLEM 变为OK!

到这里zabbix的微信告警已成功实现!也可以使用邮件发送警报!

如有不足,请多多指教!

相关文章

  • zabbix企业微信报警

    前言:通过企业微信小程序,实现zabbix自动注册和zabbix告警的微信消息推送。前言:通过企业微信小程序,实现...

  • zabbix实现微信告警

    什么是zabbix? Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 S...

  • Zabbix实现微信告警

    之前使用邮件和短信发送zabbix告警信息,但告警信息无法实时查看或者无法发送,故障无法及时通知运维人员。 后来使...

  • zabbix配置微信报警

    前言:zabbix一般可以通过邮件以及脚本的方式进行告警,zabbix通过微信报警的方式也是通过脚本来实现 企业微...

  • zabbix设置微信告警,亲测可用!!!

    zabbix微信告警 前面写了一个zabbix微信告警的,用的我的企业号,后来发现用的人太多消息都超过限制了,应大...

  • zabbix企业微信告警

    告警配置简述:1.使用脚本发送告警消息到企业微信,写脚本,放到指定目录2.创建告警触发条件 创建分组,添加主机到分...

  • 通过微信发送zabbix告警

    Title: 2015-12-30-通过微信发送zabbix告警Date: 2015-12-30Author: C...

  • zabbix微信告警根据设备告警级别的不同发给微信不同的分组

    本文主要介绍,告警根据级别发送到相应的微信分组,zabbix调用微信发送脚本设置查看https://www.jia...

  • Ntopng流量监控平台部署

    最近通过zabbix微信告警网络出口流量过高,而且持续时间很长,影响了正常业务。通过zabbix一步步 排查...

  • zabbix微信 | 使用微信告警(1)

    企业号微信报警--(公众号有48小时限制)无限制报警 笔者在维护公司监控系统的期间遇到一桩事情,之后不得不添加微信...

网友评论

      本文标题:zabbix实现微信告警

      本文链接:https://www.haomeiwen.com/subject/ybpqyxtx.html