Azure农业数据管理器:遥测数据REST API查询与路由咨询
用REST API查看传感器遥测数据
获取身份验证令牌
- 使用Azure AD获取针对Azure Data Manager for Agriculture的访问令牌,确保你的账户拥有
Data Manager for Agriculture Data Reader或更高权限。 - 令牌获取后,在所有API请求的
Authorization头中携带Bearer <你的令牌>。
- 使用Azure AD获取针对Azure Data Manager for Agriculture的访问令牌,确保你的账户拥有
调用遥测查询API
- 核心API端点:
GET https://<你的数据管理器实例端点>/sensor-telemetry/v1.0/telemetry - 关键查询参数:
sensorId:指定要查询的传感器ID(必填)startTime:遥测数据的起始时间(格式:yyyy-MM-ddTHH:mm:ssZ,必填)endTime:遥测数据的结束时间(格式同上,必填)maxCount:可选,限制返回的记录数量,默认1000
- 示例curl请求:
curl --request GET \ --url 'https://your-dma-instance.azure.com/sensor-telemetry/v1.0/telemetry?sensorId=YOUR_SENSOR_ID&startTime=2024-01-01T00:00:00Z&endTime=2024-01-02T00:00:00Z' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'Content-Type: application/json' - 返回结果会包含该传感器在指定时间范围内的所有遥测数据条目,每条包含时间戳、传感器值等字段。
- 核心API端点:
将传感器数据路由至存储账户或其他端点
路由至Azure存储账户
添加存储账户端点到IoT Hub
- 进入你的IoT Hub资源,导航到
消息路由>端点>添加 - 选择
Blob存储类型,填写以下信息:- 端点名称:自定义名称(如
SensorTelemetryBlobEndpoint) - 存储账户:选择目标存储账户
- 容器名称:指定存储遥测数据的容器(需预先创建)
- Blob命名格式:可使用默认格式或自定义(如
{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}) - 身份验证类型:选择
连接字符串或托管标识,完成配置后保存。
- 端点名称:自定义名称(如
- 进入你的IoT Hub资源,导航到
创建路由规则
- 在
消息路由>路由>添加 - 填写规则名称,数据源选择
设备遥测消息 - 筛选条件(可选):可设置SQL表达式过滤特定数据,比如
$body.temperature > 30 - 端点选择刚才创建的存储账户端点,保存规则。
- 在
验证数据路由
- 等待几分钟后,前往目标存储账户的指定容器,查看是否生成了包含遥测数据的Blob文件(格式为JSON数组)。
路由至其他端点(如Event Hub、Service Bus)
- 在IoT Hub的
消息路由>端点中添加对应类型的端点(如Event Hub),配置相关连接信息 - 创建路由规则,将设备遥测消息指向该端点
- 验证目标端点是否接收到数据
内容的提问来源于stack exchange,提问作者Venkatesh N
相关产品推荐
相关产品推荐

