【马哥linux学员学习笔记】zabbix实现微信报警

本文作者系马哥linux学员典韦。

一、注册微信公众号

首先申请微信公众平台https://mp.weixin.qq.com/一个人最多申请5个公众号,所以还是可以的

申请完之后就可以根据腾讯的提示使用微信公众号了,然后用你自己的微信扫描关注微信号。

wKioL1XamKCDlcULAAEAZ3R9JQw665.jpg

就可以看到用户数了,接下来的就要使用的用户的微信ID号了。点击用户查看用户的微信ID号。在浏览器查看用户的微信ID号。就是那个红色的ID了。

https://mp.weixin.qq.com/cgi-bin/singlesendpage?t=message/send&action=index&tofakeid=770373640&token=748989398&lang=zh_CN

wKioL1XamPGi8hgjAABy-Fv8zUY677.jpg


二、下载并配置微信公众平台私有接口

git clone https
://github.com/lealife/WeiXin-Private-API


修改配置文件

[root@zabbix ~]# git clone https://github.com/lealife/WeiXin-Private-API
[root@zabbix ~]# cp -r WeiXin-Private-API/ /usr/local/zabbix/share/zabbix/alertscripts/
[root@zabbix ~]# cd /usr/local/zabbix/share/zabbix/alertscripts/WeiXin-Private-API
[root@zabbix WeiXin-Private-API]# chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/WeiXin-Private-API


修改config文件

[root@zabbix WeiXin-Private-API]# vi config.php
<?php
 
// 全局配置
 
$G_ROOT = dirname(__FILE__);
 
$G_CONFIG["weiXin"] = array(
        'account' => '微信公众登录号码',
        'password' => '微信公众登录密码',
        'cookiePath' => $G_ROOT. '/cache/cookie', // cookie缓存文件路径
        'webTokenPath' => $G_ROOT. '/cache/webToken', // webToken缓存文件路径
);


修改test.php文件,只需要保存这几行即可

<?php
require "config.php";
require "include/WeiXin.php";
 
$weiXin = new WeiXin($G_CONFIG['weiXin']);
 
$testFakeId = "$argv[1]";
$msg="$argv[3]";
 print_r($weiXin->send($testFakeId, "$msg"));


注意这里$msg="$argv[3]"表示zabbix传入的第三个参数,因为在zabbix报警时会传入三个参数:一是微信好友ID,二是报警信息的主题,三是报警信息的具体内容,这里跳过了报警信息主题,直接发送报警信息内容

创建微信报警脚本weixin

[root@zabbix alertscripts]# vi weixin
/usr/bin/php /usr/local/zabbix/share/zabbix/alertscripts/WeiXin-Private-API/test.php "$1" "$2" "$3"
[root@zabbix alertscripts]# chown -R zabbix.zabbix weixin
[root@zabbix alertscripts]# chmod +x weixin


测试报警

[root@zabbix alertscripts]# /usr/local/zabbix/share/zabbix/alertscripts/weixin 770373640 "" "hello"
PHP Notice:  Undefined index: HTTP_USER_AGENT in /usr/local/zabbix/share/zabbix/alertscripts/WeiXin-Private-API/include/LeaWeiXinClient.php on line 33
PHP Notice:  Undefined index: HTTP_USER_AGENT in /usr/local/zabbix/share/zabbix/alertscripts/WeiXin-Private-API/include/LeaWeiXinClient.php on line 33
stdClass Object
(
    [base_resp] => stdClass Object
        (
            [ret] => 0
            [err_msg] => ok
        )
 
)


查看结果

wKioL1XamQ-gJ5l4AABCPRa5nQY132.jpg


三、配置zabbix

3.1、添加报警媒介

wKiom1XalxLDi-PvAACjba4Ezcc762.jpg

3.2、用户添加报警媒介,这里使用默认的administrator用户

wKioL1XamTGiy4h1AADS4qs-fpM823.jpg

3.3、添加报警动作

wKioL1XamUjBfZ1BAAGaW-wFsq4040.jpg

信息如下,使用默认的信息也可以

wKioL1XamVyhfgM_AALIf_Qmgug921.jpg

修改操作条件,使用默认的也是可以的

保存设置




四、验证结果

重启一台虚拟机进行测试。由于我也开启了邮件报警,所以看一下邮件先

wKioL1XamXTTAayGAAFFFE9n7WM448.jpg

看一下微信

wKiom1Xal3CyBRUhAAG99klpNyw869.jpg

OK的。完成。


Note:本文的脚本借鉴于csdn上一哥们的文章,大家如果有需要可以参考下下文的链接,我这里只是抛砖引玉,为大家开个头。

参考文章:http://blog.chinaunix.net/uid-30236771-id-5037842.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值