【逗老师带你学IT】PRTG监控系统通过企业微信推送图文混排告警消息

往期回顾:
【逗老师带你学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远程接入与深信服行为审计同步登陆用户信息

猜你喜欢

转载自blog.csdn.net/ytlzq0228/article/details/105525667
今日推荐