|
一、背景介绍:
起初使用邮件报警,接收效果一直不好,需要打开邮箱才看到报警邮件。后来使用微信企业公众号,方便,省事,接收及时,可以做到第一时间相应。现在微信企业公众号更新成企业微信了。发送报警的方式有稍微改变。之前借用别人的脚本,密密麻麻。借此机会,自己写了个脚本与之分享、
二、实现步骤:
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: zhaofeng@bjdaos.com
# 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 "$@" | 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
|
|
|