现实生产环境中,我们通常使用邮件和短信接受zabbix报警信息,但是邮件经常被工作人员搁置在角落中甚至被设置为垃圾邮件被过滤掉。公司的短信接口又太贵,复杂环境中使用短息报警会使运维成本增加很多。微信提供了很好的第三方接口,我们可以利用微信报警以求降低运维成本。
微信的第三方接口要求我们先申请一个企业号——传送门:https://qy.weixin.qq.com/
如何操作企业号?
1.通讯录添加企业成员
我们要提前把成员信息添加进组织部门,必填项+手机号或者微信号,这样别人扫描二维码的时候才能成功关注企业号。
注意:这里有两个我们要用到信息,一个组织部门的ID,一个部门成员的账号(账号是自己手动指定的,不同于微信号,最好是字母加数字)
2.应用中心创建应用
我们要在这里创建应用,因为要通过应用发送消息给部门成员
注意:这里要记住一个值,应用ID
3.给部门设置管理员
设置--->功能设置---->权限管理---->新建管理组
管理员必须事先已经关注了企业号,并且已经设置好邮箱地址
确定管理员可以读取通讯录,可以使用应用发消息。
注意:我们需要管理员的CorpID和Secret
我们要准备这些东西:
一个微信企业号
企业号已经被部门成员关注
企业号里有一个可以发消息的应用
一个授权管理员,可以使用该应用给成员发消息
我们要取到这些信息:
成员账号
组织部门ID
应用ID
CropID
Secret
如何调用微信接口?
调用微信接口需要一个调用接口的凭证:access_token
通过 :CropID 、Secret 才能获取到access_token,但是获取到的token有效期为两分钟
微信企业号接口调试工具传送门:http://qydev.weixin.qq.com/debug
Shell脚本原理
使用:
curl -s -G url 获取 AccessToken
使用:
curl --data url 传送凭证调用企业号接口
zabbix会传递三个参数给脚本,$1是消息接收账号,$2报警标题,$3报警内容
#!/bin/bash ###SCRIPT_NAME:weixin.sh### ###send message from weixin for zabbix monitor### ###wuhf### ###V1-2015-08-25### CropID=‘xxxxxx‘ Secret=‘xxxxxx‘ GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken" Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" ‘{print $4}‘) PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send" function body() { local int AppID=3 企业号中的应用id local UserID=$1 部门成员id,zabbix中定义的微信接收者 local PartyID=1 部门id,定义了范围,组内成员都可接收到消息 local Msg=$(echo "$@" | cut -d" " -f3-) 过滤出zabbix中传递的第三个参数 printf ‘{\n‘ printf ‘\t"touser": "‘"$User"\"",\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"\""\n" printf ‘\t},\n‘ printf ‘\t"safe":"0"\n‘ printf ‘}\n‘ } /usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
为什么要这样写脚本?
因为微信企业号开放的端口有固定的格式限制
企业号支持的格式:http://qydev.weixin.qq.com/wiki/index.php"theimg" src="/UploadFiles/2021-04-02/2016913171513984.jpg">
将脚本放入zabbix默认执行路径下
mv weixin.sh /usr/local/zabbix/share/zabbix/alertscripts
chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/weixin.sh
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/weixin.sh
服务器端
1.创建媒介
2.创建用户
3.创建触发器动作发送内容
4.设置触发器动作发送方式
收到的微信消息:
本文出自 “铜锣湾” 博客,请务必保留此出处http://wuhf2015.blog.51cto.com/8213008/1688614
以上就是微信报警 zabbix 的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 关牧村《中国低音天后》2CD[FLAC]
- 【古典音乐】图蕾克《巴赫-哥德堡变奏曲》(羽管键琴版)2CD.2004[FLAC+CUE整轨]
- 童丽《季候风》双层SACD头版限量珍藏[WAV+CUE][1.1G]
- 谭咏麟《倾·听》2022改编歌曲[WAV+CUE][1.2G]
- 证声音乐图书馆《毕业季·青春爵士》[320K/MP3][49.17MB]
- 张国荣《劲歌集》欧盟压碟[原抓WAV+CUE]
- 黄安《明明知道相思苦》[WAV+CUE]
- 李俊广VS许岚岚《秋蝉》[低速原抓WAV+CUE]
- 证声音乐图书馆《毕业季·青春爵士》[FLAC/分轨][265.35MB]
- 证声音乐图书馆《爵士嘉年华 Big Band Swing》[320K/MP3][62.44MB]
- 证声音乐图书馆《爵士嘉年华 Big Band Swing》[FLAC/分轨][239.3MB]
- 中国民歌宝典《民歌精粹经典珍藏》12CD[WAV]
- 阿姆斯特丹小交响乐团演奏《室内交响曲》SACD-WAV
- Parijat-BuddhaGarden《佛陀花园》[WAV+CUE]
- 证声音乐图书馆《巴莎诺瓦 惬意咖啡馆》[320K/MP3][220.56MB]