由于研究过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"对应的变量,传参更改相应变量值即可。