一、背景介绍:
起初使用邮件报警,接收效果一直不好,需要打开邮箱才看到报警邮件。后来使用微信企业公众号,方便,省事,接收及时,可以做到第一时间相应。现在微信企业公众号更新成企业微信了。发送报警的方式有稍微改变。之前借用别人的脚本,密密麻麻。借此机会,自己写了个脚本与之分享、
二、实现步骤:
1、申请企业微信号
2、创建告警脚本
3、设置web管理界面触发脚本。
4、修改zabbix_server端配置文件。并重启
5、测试报警触发功能
6、完成
三、实施部署:
完成第一步:申请企业微信号:
地址:https://work.weixin.qq.com/wework_admin/register_wx?from=myhome_mp_home
注册信息共计三步,按照指示填写相关信息,下一步即可:
1、填写企业信息:
2、管理员使用微信扫二维码
3、填写管理员基本信息
4、注册成功:
企业号申请完成。创建工作组
创建完成、红框内的内容需要注意。脚本中需要用到
完成第二步:脚本编写
#!/bin/bash # SCRIPT_NAME: weixin.sh # DESCRIPTION: send message from weixin for zabbix monitor # Email: [email protected] # DATE : 2017-06-06 CropID=‘wxeadc9b62be8e382b‘ Secret=‘ovd5WejYR68V7pj9BJ95eYcYrlmOA1gYNEvtVdJ-Zhc‘ #获取access_token GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret" Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" ‘{print $10}‘) PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken" function body () { local Meg=$(echo "[email protected]" | cut -d" " -f3-) echo """{ \"touser\" : \"@all\", \"msgtype\" : \"text\", \"agentid\" : 1, \"text\" : { \"content\" : \"$Meg\"} }""" } /usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
完成第三部:web管理界面触发脚本
1、建立报警媒介类型
2、映射用户触发(由哪个用户发送报警):
3、创建触发动作:
完成第四步、修改配置文件并重启:(报警脚本目录)
将报警脚本放置本目录下
cat zabbix_server.conf AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
完成第五步:测试报警功能:
修改一个item的触发器。使之触发报警脚本
完成。参考文档:https://work.weixin.qq.com/api/doc#10087
时间: 2024-11-17 01:10:02