Zabbix與微信報警

zabbix微信企業號報警

 

  1. 微信的第三方接口要求我們先申請一個企業號——傳送門:https://qy.weixin.qq.com/

  2. 註冊很簡單,只要有***和手機號就可以。要留意CorpID,Secret這個要在下邊使用到。    

wKioL1bC1jKCdcRZAABoSISESI4875.png

通過 :CropID 、Secret  才能獲取到access_token,但是獲取到的token,用bash shell 來實現調用如下weixin.sh

#!/bin/bash

###SCRIPT_NAME:weixin.sh###

###send message from weixin for zabbix monitor###

 

CropID='wxf4425e9ad223f6c5'

Secret='S9ryINZop_1ECJAuwPmXs6x63Lt8YBiMomXBdhNsLWXu25GJQSagcBfOeeYRgtyJ'

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"

function body() {

        local int AppID=1

        local UserID=$1

        local PartyID=1                        

        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'

}

 

/usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL

  1. weixin.sh加入/usr/local/zabbix/share/zabbix/alertscripts/,依據安裝目錄而定。

              #chmod +x weixin.sh

              #chown zabbix.zabbix weixin.sh           

  2. zabbix上進行配置 Administrator”—“Mediatypes”—“Create media type

wKioL1bC1wPyqtPrAACFIeJxc0U331.png

wKiom1bC1qHi3xPBAAAlVmmzxec011.png

wKiom1bC1qGgAq6JAAEbzpOHtwY802.png


wKiom1bC1qKR3mjvAACZ27MYQ24766.png


wKiom1bC1qPyrDw2AAB73fuBv7s216.png





配置Media,”Profile”—“Media”—“Add”,Tpye選中”weixin”,Sendto填寫“你要發送的微信公衆號”

wKiom1bC1qLCZDL0AACAw8BI5dU795.png

配置action,”Administrator”—“Actions”—“Createaction”,其中\n是批換行,此處不同於郵件中的換行<br>

wKiom1bC1qPyrDw2AAB73fuBv7s216.png

 

 

  1. 測試結果如下

     

     

wKioL1bC1wiQQx5TAAGAa26FaxU021.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章