Zabbix实现微信报警

  • A+
所属分类:系统运维

%ignore_pre_1%

 
 第一步、注册微信公众号

    首先申请微信公众平台https://mp.weixin.QQ.com/一个人最多申请5个公众号,所以还是可以的,申请完之后就可以根据腾讯的提示使用微信公众号了,然后用你自己的微信扫描关注微信号。

Zabbix实现微信报警

    就可以看到用户数了,接下来的就要使用的用户的微信iD号了。点击用户查看用户的微信iD号。在浏览器查看用户的微信iD号。
    点击总用户数,点击刚刚关注的你自己的微信号的头像,在弹出的网页url中有你微信号的id 也就是下面url标红的部分。

https://mp.weixin.QQ.com/cgi-bin/singlesendpage?t=message/send&action=index&tofakeid=1415366540&token=1136922890&lang=zh_CN

Zabbix实现微信报警

 

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

下载APi
# git clone https://github.com/lealife/WeiXin-Private-APi

修改config文件:
# 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.sh 放到zabbix默认的脚本路径里,我的zabbix脚本路径为: /APP/zabbix/shARe/zabbix/alertscripts

# touch /APP/zabbix/shARe/zabbix/alertscripts/weixin.sh
===================================================
#!/bin/bash
php test.php "$1" "$2" "$3"
===================================================
#  chmod +x weixin.sh      给脚本增加执行权限
#  chown zabbix:zabbix weixin.sh      给zabbix用户赋予权限

测试接口是否可以使用:

#  ./weixin.sh 1415366540 "" "Welcome Weixin"

若出现以下信息,则表示发送成功:

Zabbix实现微信报警

 

第三步、配置Zabbix告警

1、增加示警媒介类型:

Zabbix实现微信报警

2、添加用户报警媒介,这里使用administrator用户

Zabbix实现微信报警

3、添加报警动作

Zabbix实现微信报警

告警内容在本文章最下面会有文字版

Zabbix实现微信报警

测试:
停掉一台线上测试服务器的nginx,看是否收到微信的告警:如图

Zabbix实现微信报警

使用Zabbix进行微信告警配置完毕!

下面是zabbix告警模板
主       题:
故障{TRiGGER.STATUS},服务器:{HOSTNAME1}发生: {TRiGGER.NAME}故障!
默认信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TiME}
告警等级:{TRiGGER.SEVERiTY}
告警信息: {TRiGGER.NAME}
告警项目:{TRiGGER.KEY1}
问题详情:{iTEM.NAME}:{iTEM.VALUE}
当前状态:{TRiGGER.STATUS}:{iTEM.VALUE1}
事件iD:{EVENT.iD}

恢复主指:
恢复{TRiGGER.STATUS}, 服务器:{HOSTNAME}: {TRiGGER.NAME}已恢复!
恢复信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TiME}
告警等级:{TRiGGER.SEVERiTY}
告警信息: {TRiGGER.NAME}
告警项目:{TRiGGER.KEY1}
问题详情:{iTEM.NAME}:{iTEM.VALUE}
当前状态:{TRiGGER.STATUS}:{iTEM.VALUE1}
事件iD:{EVENT.iD}

版权属于:
小白的运维站

原文地址:
http://www.52yunwei.cn/?p=426

转载时必须以链接形式注明原始出处及本声明。




该文章由WP-AutoPost插件自动采集发布

原文地址:http://www.52yunwei.cn/?p=426

weinxin
我的微信
这是我的微信

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: