利用云服务器接收微信消息,使用脚本实现云之家(类似微信)接收zabbix报警消息...

之前共享了云之家报警脚本,使用此脚本,可以实现下面这种实时的报警消息。当然我们也可以使用微信来报警,不过云之家是完全免费没有任何限制可以发送∞条消息,微信需要花钱认证才能实现相同的功能,所以选择云之家。

f3c9068692001ecb8138e8a0aec45469.png

原理参见下图,下面介绍如何使用。

0aa813bed1f087efe46b1e0b79e0ff14.png

本文假设您熟悉MySQL,会安装Nginx及配置它的虚拟主机,知道crontab以及如何定时执行python脚本。

为Python安装MySQL支持

请先安装MySQL-python模块。yum install MySQL-python

创建数据库

下载table.sql.zip文件,解压后是sql脚本文件,创建数据库和数据表,并新建用户赋予相关权限(如果您不知道具体哪些权限您可以赋予所有权限)。

api接口安装

使用包管理器安装nginx,或编译安装nginx。

下载yunzhijia.zip解压,将web目录添加为nginx的一个虚拟主机,由于php脚本没有对访问权限进行控制,请自行使用nginx的allow,deny模块对访问进行控制。

zabbix发信脚本安装

将解压后的zabbix_script目录中的getData.py脚本放到zabbix的脚本目录中。

使用yum安装的默认目录为『/usr/lib/zabbix/alertscripts』,这个目录可以在配置文件『/etc/zabbix/zabbix_server.conf』中更改,大概在文件的第435行左右。

zabbix设置

参照下图添加一个报警方式。

b30fd8f53690295267231a0caad07ec6.png

指定一个需要的用户用此报警方式发信。

c006551bcb5223cbdaa50c1664bb60b7.png

添加一个动作,指定使用上面设置的报警方式。

确保传递给脚本的文本为正确的json格式:

其中各参数的含义请参考数据库中的注释。{

"from":"207",

"to":"199",

"msg_type":"2",

"host":"{TRIGGER.NAME}",

"level":"{TRIGGER.SEVERITY}",

"msg":"运行在{HOST.CONN}上的{TRIGGER.NAME}进程ok心跳超时,当前值为 {ITEM.VALUE1}。\r\n{ITEM.KEY1}:{ITEM.VALUE1}"

}

d308809ce961bcd46171149640144032.png

更改触发器严重性,必须要与下图一样:

a7ca6507c5d390d7679e87f1953525d1.png

创建计划任务定时查数据库发信

创建crontab任务,将解压后的init.py创建为每分钟一次的任务。config.json需与init.py处于同一目录。

申请云之家帐号

自己问度娘。

下载云之家APP

自己搜索AppStore。

config.json解释

url:上述nginx配置的访问地址。

db:数据库信息

from:你设定的报警来源,zabbix可以只是其中一项(目前我们就是这样用的,不止zabbix一个需要发消息)。

msgType:信息类型。

level:信息严重性

to:发往哪个公众号,可以设置多个,name为自定义,no,pub,pubkey需要参考云之家中的设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值