【逗老师带你学IT】PRTG HTTP API获取指定传感器流量图表图片

本文详细介绍PRTG监控系统通过HTTPAPI获取监控数据及图表的方法。包括API身份认证方式,如用户名+密码或哈希密码,以及如何通过API获取实时传感器图表。建议设置专用只读用户提高安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PRTG服务器支持通过HTTP API获取监控数据和监控图表。本文主要介绍HTTP API的方式拉取任意传感器流量图表。文章内容翻译和重新整理自PRTG用户手册。
原文链接:
PRTG Manual: Application Programming Interface (API) Definition

一、PRTG API身份认证方式

1、身份认证URL格式

PRTG API的所有请求都是无状态的,仅需要在所有请求的URL里包含认证信息即可。有两种认证方式:

1、username+password (铭文密码)
2、username+passhas(哈希密码)

两种认证方式构建的URL基本相同,举例如下:
passhash方式:

 https://x.x.x.x/api/table.xml?username=myuser&passhash=hash

password方式:

 https://x.x.x.x/api/table.xml?username=myuser&password=mypassword

2、passhas密码哈希获取方式

有两种方式获取passhas密码哈希

2.1API调用请求passhas

可以使用以下API调用来请求帐户的密码,最简单的是直接在浏览器访问此API URL即可以看到passhas

https://yourserver/api/getpasshash.htm?username=myuser&password=mypassword

2.2管理员控制台查看

使用管理员账号登录PRTG Web管理控制台,访问设置->系统管理->用户账户
进入一个账户后即可查看该账户的passhash
在这里插入图片描述

二、实时图表API

1、实时图片API URL

可以使用PRTG API获取实时传感器图。PRTG将图形呈现为.png或.svg文件。
PNG格式图片:

/chart.png?type=graph&width=300&height=160&graphid=2&id=0

SVG格式矢量图片

/chart.svg?type=graph&width=300&height=160&graphid=2&id=0

注意:
1)API URL中必须包含身份验证部分,username=myuser&password=mypassword
2)URL包含帐户用户名和密码/密码。这可能意味着安全问题。建议在PRTG中设置一个专用的只读用户帐户,该帐户是专用用户组的成员,例如,该帐户仅具有根组和所有基础条目的读取权限,甚至更好的是,仅具有对象ID的读取权限,用于请求API URL。
在这里插入图片描述

2、实时图形URL的参数

在这里插入图片描述
附图1:传感器ID和通道ID的查看位置如下:在这里插入图片描述
下期讲:如何通过企业微信群消息机器人发送带图片的图文消息
【逗老师带你学IT】PRTG监控系统通过企业微信推送图文混排告警消息

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

<think>好的,我需要回答用户关于PRTGHTTPS API使用指南和文档的问题。首先,用户提到他们想了解或使用PRTGHTTPS API进行监控或管理,因此我需要提供相关的指南和文档信息。 根据之前的引用内容,用户可能已经知道PRTG在调用Python脚本时会传递设备IP地址,但具体如何操作可能还不清楚。这可能涉及到API的参数传递方法。因此,我需要首先确认PRTG HTTPS API的基本使用方法,包括认证方式、请求格式和常见接口。 接下来,我应该分步骤解释如何使用HTTPS API,例如通过curl命令或编程语言发送请求。同时,需要提到认证方式,比如使用PassHash或用户名密码,并给出示例代码,如Python中使用requests库的示例。 另外,用户可能需要了解API文档的位置,应该指出PRTG的官方文档通常位于其服务器地址的/api路径下,例如https://prtg.example.com/api。同时,需要说明文档中可能包含的各个接口,如传感器数据、设备状态、触发动作等。 还要注意常见的注意事项,比如HTTPS的端口是否为默认的443,或者是否有自定义端口。此外,权限管理和错误处理也是用户可能关心的问题,需要提及查看用户角色权限和检查错误响应码。 最后,生成相关问题,帮助用户深入理解,比如如何传递参数、处理数据或优化性能。需要确保所有信息准确,引用用户提供的参考链接,并在适当的位置添加引用标识。</think>### PRTG HTTPS API 使用指南 #### 1. **基础认证与请求格式** PRTGHTTPS API支持通过`GET`/`POST`请求调用,需使用**PassHash**或用户名密码认证。PassHash生成方式为: $$ \text{PassHash} = \text{MD5}(\text{密码} + \text{登录用户名的小写MD5}) $$ 示例请求(替换`prtg.example.com`为实际地址): ```bash curl "https://prtg.example.com/api/getstatus.htm?username=admin&passhash=12345678" ``` #### 2. **核心接口与功能** - **设备/传感器数据查询**:`/api/table.json`获取设备列表,`/api/getobjectstatus.htm`查询特定对象状态。 - **实时监控**:`/api/gethistoricdata.csv`导出历史数据,支持时间范围过滤。 - **远程管理**:`/api/pause.htm`暂停设备监控,`/api/resume.htm`恢复监控[^1]。 #### 3. **Python集成示例** 使用`requests`库调用API(需处理SSL验证): ```python import requests url = "https://prtg.example.com/api/getstatus.htm" params = { "username": "admin", "passhash": "你的PassHash", "content": "messages" } response = requests.get(url, params=params, verify=True) print(response.text) ``` #### 4. **文档访问路径** PRTGAPI文档默认位于服务器路径`/api`,例如: $$ \text{https://prtg.example.com/api} $$ 文档包含完整的参数说明、返回格式和错误代码。 #### 5. **注意事项** - **端口配置**:若PRTG使用非标准HTTPS端口(如8443),需在URL中指定端口。 - **权限管理**:API操作受用户角色权限限制,需在PRTG后台配置访问策略。 - **错误处理**:检查返回状态码(如`200`成功,`400`参数错误)及XML/JSON中的`<error>`字段。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逗老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值