由于研究过php和java的微信告警发送,后来发现目前的微信告警需求相对不复杂,通过shell脚本可以满足目前的zabbix微信告警需求。
本文讲解的是通过shell脚本进行zabbix告警通过微信发送。
一、在zabbix的发送告警的的目录下新建sendWeChat.sh
cd /usr/lib/zabbix/alertscripts
vim sendWeChat.sh
二、脚本内容(需要企业号的CropID和Secret)
#!/bin/bash
# Filename: sendWeChat.sh
# Revision: 1.0
# Date: 2015/09/08
# Author: Json
# Description: zabbix微信告警脚本
# Notes: WeCaht告警
#
CropID=企业号的CropID
Secret=企业号的Secret
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" ‘{print $4}‘)
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"
Content=$3
/usr/bin/curl --data-ascii ‘{ "touser": "@all", "toparty": " @all ","msgtype": "text","agentid": "1","text": {"content": "‘${Content}‘"},"safe":"0"}‘ $PURL
ps:本文只讲解了发送微信告警,未进行分组告警。如果需要分组,可以添加"touser"对应的变量,传参更改相应变量值即可。