天天看点

zabbix实现微信报警

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

一、注册微信公众号

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

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

zabbix实现微信报警

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

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

zabbix实现微信报警

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

1

2

git clone https

:

//github

.com

/lealife/WeiXin-Private-API

修改配置文件

3

4

[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文件

5

6

7

8

9

10

11

12

13

[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

)

)

查看结果

zabbix实现微信报警

三、配置zabbix

3.1、添加报警媒介

zabbix实现微信报警

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

zabbix实现微信报警

3.3、添加报警动作

zabbix实现微信报警

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

zabbix实现微信报警

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

保存设置

四、验证结果

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

zabbix实现微信报警

看一下微信

zabbix实现微信报警

继续阅读