往期回顧:
【逗老師帶你學IT】PRTG監控系統通過企業微信推送告警消息
【逗老師帶你學IT】PRTG HTTP API獲取指定傳感器流量圖表圖片
在往期的文章裏,我們講了
1、如何在PRTG產生告警的時候通過企業微信小機器人推送告警
2、如何通過API抓取PRTG的流量圖片
那麼…
我們可不可以在推送告警的時候,發送圖文混排的告警消息呢?
可以!
我們把之前的代碼稍微一改就可以了:
#import http.client
import json
import urllib
import requests
import sys
import datetime
webhook_url="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=f04f8bda-92ff-4271-bbfc-0e02306817544"
#以上地址改成企業微信小機器人webhook地址
def wechatwork_robot():
now_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
paramsList =[ "", "探針設備:","設備羣組:","節點:", "傳感器名稱:" , "現在狀態:","停機時間:","附加消息:","傳感器ID:","參數9:" ]
content = ""
headers = {"Content-Type": "text/plain"}
for i in range(len(sys.argv)):
if i>0:
content = content +"<font color=\"comment\">"+paramsList[i]+"</font>"+sys.argv[i]+"\n"
data1 = {
"msgtype": "markdown",
"markdown": {
"content": "**<font color=\"info\">【PTRG微信小機器人】</font>**\n**通知時間:"+ now_time +"**\n"+ content,
}
}
r = requests.post(url=webhook_url,headers=headers, json=data1)
print(r.text)
#純文本的告警消息
data2 = {
"msgtype": "news",
"news": {
"articles" : [
{
"title" : "告警節點實時狀態,ID:"+sys.argv[8],
"description" : "點擊圖片進入PRTG查看當前狀態詳細信息\n傳感器名稱:"+sys.argv[4],
"url" : "https://PRTG服務器地址/sensor.htm?id="+sys.argv[8]+"&tabid=1&username=apiuser&passhash=923055543",
#點擊圖片直接跳轉到告警節點的web頁面,需要帶認證信息
"picurl" : "https://PRTG服務器地址/chart.png?type=graph&width=500&height=215&graphid=0&id="+sys.argv[8]+"&username=apiuser&passhash=923055543"
#告警圖片URL爲《PRTG HTTP API獲取指定傳感器流量圖表圖片》一文中介紹的API URL
}
]
}
}
r = requests.post(url=webhook_url,headers=headers, json=data2)
print(r.text)
#圖文混排的告警消息
wechatwork_robot()
相比較《PRTG監控系統通過企業微信推送告警消息》一文中介紹的發送文本告警,本例中需要增加傳遞%sensorid
PRTG自定義告警->告警模板->執行程序->傳遞參數部分,需要增加傳遞%sensorid
關於企業微信圖文混排性消息類型說明
參數 | 是否必填 | 說明 |
---|---|---|
msgtype | 是 | 消息類型,此時固定爲news |
articles | 是 | 圖文消息,一個圖文消息支持1到8條圖文 |
title | 是 | 標題,不超過128個字節,超過會自動截斷 |
description | 否 | 描述,不超過512個字節,超過會自動截斷 |
url | 是 | 點擊後跳轉的鏈接。 |
picurl | 否 | 圖文消息的圖片鏈接,支持JPG、PNG格式,較好的效果爲大圖 1068x455,小圖150x150。 |
往期回顧:
【逗老師帶你學IT】PRTG HTTP API獲取指定傳感器流量圖表圖片
【逗老師帶你學IT】PRTG監控系統合併多個傳感器通道數據
【逗老師帶你學IT】PRTG監控系統通過企業微信推送告警消息
【逗老師帶你學IT】PRTG監控系統配合樹莓派採集企業內部無線網絡質量
【逗老師帶你學IT】vMware ESXi 6.7合併第三方硬件驅動
【逗老師帶你學IT】Kiwi Syslog Server安裝和配置教程
【逗老師帶你學IT】Kiwi Syslog Web Access與Active Directory集成認證
【逗老師帶你學IT】vMware ESXi 6.7合併第三方硬件驅動
【逗老師帶你學IT】Windows Server Network Policy Service(NPS)記賬與審計
【逗老師帶你學IT】Windows Server NPS服務構建基於AD域控的radius認證
【逗老師帶你學IT】AD域控和freeradius集成認證環境,PAP,MSCHAPV2
【逗老師帶你學IT】深信服SSL遠程接入與深信服行爲審計同步登陸用戶信息