Zabbix 微信报警 shell 脚本

Zabbix 报警信息使用 shell 脚本推送到企业微信的方法

#!/bin/bash
###SCRIPT_NAME:weixin.sh###
###send message from weixin for zabbix monitor###

datetime=`date +%Y%m%d%H%M%S`
logfile="/data/zabbix/send2weixin_$datetime.log"
CropID='###' #更换为自己企业微信应用id
Secret='###' #更换为自己企业微信secret
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
#CurlLog="/data/weixin_curl/curl_$datetime.log"
echo "get token ..." >> $logfile
Gtoken_get=$(/usr/bin/curl -s -G $GURL) 
echo $Gtoken_get >> $logfile
Gtoken=$(echo $Gtoken_get | awk -F\" '{print $10}')
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"

function body() {
                #.......id
        local int AppID=1
                #....id.zabbix.........
        local UserID=$1
                #..id..................
        local PartyID=1
                #...zabbix.........
        local Msg=$(echo "$@" | cut -d" " -f3-)
        printf '{\n'
        printf '\t"touser": "'"$UserID"\"",\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'
}
echo "send wechat ..." >> $logfile
/usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL >> $logfile 2>&1

发表评论

评论列表,共 0 条评论

    暂无评论