Azure IoT Hub 十分钟入门系列 (3)- 使用消息路由将原始设备数据记录存档
本文主要分享一个案例:
10分钟使用消息路由将原始设备数据记录存档
B站视频讲解:https://www.bilibili.com/video/av90223893/
本文主要有如下内容:
1.理解什么是消息路由,为什么要用消息路由
2.消息路由的类型
3.配置一个到Storage的消息路由,将原始设备消息存储到blob
4.配置一个到Storage的消息路由,当温度>30°C时,才存储下来
图文讲解:
本文参照官网:https://docs.azure.cn/zh-cn/iot-hub/tutorial-routing

1.什么是消息路由
消息路由是IoT Hub内置的一种消息分发机制,消息路由默认包含一个路由到 Event Hub(事件中心)内置终结点和路由,
我们上节内容中介绍到的使用Azure CLI 接收消息,就是从这个默认的Event Hub的终结点获取到的数据。
消息路由提供了将遥测消息/设备孪生事件/设备生命周期事件 根据设定的规则进行分发的能力,本文中,我们仅关注遥测消息。
消息路由将消息路由向不同的终结点(可以是存储,可以是消息中间件等),方便后续对接更多的业务逻辑或产品对数据进行处理。
2.消息路由的类型
消息路由支持Event Hub,Service Bus(类似于RabbitMq等消息中间件),Storage存储等共计4种,这四种产品或服务也都有对应的SDK,方便大家读取其中的数据。
3. 案例:设置消息路由并检查结果

如上图种,消息路由页面有“路由”“自定义终结点”,含义分别如下:
自定义终结点:规定了消息的目的地,目的地是Everent Hub,Service Bus等四个服务的具体实例;
路由:规定了什么样的数据(规则)送到哪个目的地;
因此需要先创建自定义终结点,再创建路由。
如下图,我们创建了一个到Storage的终结点,Batch频率100表示100秒才会执行一次批量写入到Storage,文件名格式为文件在Storage中存储的路径:

然后,创建了指向上述终结点的路由,其中路由查询true表示所有消息,此设置表示,所有遥测消息都发送到Storage的容器中。

开启客户端程序向IoT Hub发送遥测数据,一段事件后,进入到Storage中检查结果:

Azure IoT Hub 十分钟入门系列 (3)- 使用消息路由将原始设备数据记录存档的更多相关文章
- Azure IoT Hub 十分钟入门系列 (2)- 使用模拟设备发送设备到云(d2c)的消息
本文主要分享一个案例: 10分钟- 使用Python 示例代码和SDK向IoT Hub 发送遥测消息 本文主要有如下内容: 了解C2D/D2C消息: 了解IoT Hub中Device的概念 了解并下载 ...
- Azure IoT Hub 十分钟入门系列 (1)- 10分钟带你了解Azure IoT Hub 并创建IoT Hub
建议您先对<Azure 上 IoT 整体解决方案概览 >进行了解. 本文主要分享一个案例: 10分钟-了解Azure IoT Hub并创建Azure IoT Hub 本文主要有如下内容: ...
- Azure IoT Hub 十分钟入门系列 (4)- 实现从设备上传日志文件/图片到 Azure Storage
本文主要分享一个案例: 10分钟内通过Device SDK上传文件到IoTHub B站视频:https://www.bilibili.com/video/av90224073/ 本文主要有如下内容: ...
- Azure IoT Hub和Event Hub相关的技术系列-索引篇
Azure IoT Hub和Event Hub相关的技术系列,最近已经整理了不少了,统一做一个索引链接,置顶. Azure IoT 技术研究系列1-入门篇 Azure IoT 技术研究系列2-设备注册 ...
- Azure IoT 技术研究系列2-起步示例之设备注册到Azure IoT Hub
上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...
- Azure IoT 技术研究系列2-设备注册到Azure IoT Hub
上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...
- 30分钟连接树莓派到微软云 Azure IoT Hub,并将数据进行可视化
更多内容,关注公众号: 树莓派是很多动手达人必备的小玩具,本节内容,让我们拿出树莓派,在30分钟内,将树莓派连接到微软云Azure的IoT Hub,然后将温湿度曲线可视化.(本节内容完整视频在文章末尾 ...
- 基于Azure IoT开发.NET物联网应用系列-全新的Azure IoT架构
物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是物联网技术的最大应用,车联网.物联网.互联网三网合一.2017年的时候重点研究过Azure Io ...
- 十分钟入门less(翻译自:Learn lESS in 10 Minutes(or less))
十分钟入门less(翻译自:Learn lESS in 10 Minutes(or less)) 注:本文为翻译文章,因翻译水平有限,难免有缺漏不足之处,可查看原文. 我们知道写css代码是非常枯燥的 ...
随机推荐
- Web 开发人员推荐的通用独立 UI 组件
现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...
- 动态规划(Dynamic Programming, DP)---- 最大连续子序列和
动态规划(Dynamic Programming, DP)是一种用来解决一类最优化问题的算法思想,简单来使,动态规划是将一个复杂的问题分解成若干个子问题,或者说若干个阶段,下一个阶段通过上一个阶段的结 ...
- resample matlab实现
使用线性插值实现sample rate转换. function output = simpleResample(input, inputfs, outputfs) inputLen = length( ...
- borderInterpolate()函数
官网:borderInterpolate borderInterpolate 函数原型 int borderInterpolate( int p, int len, int borderType ); ...
- quartus 9.0 对话框显示不完整
今天在quartus9.0新建SOPC build时,发现在添加PLL时对话框太大,笔记本分辨率差,导致结束和next不能选择: 解决: 如果电脑分辨率可以调整为合适的,就去调整: 现在介绍分辨率不合 ...
- [lua]紫猫lua教程-命令宝典-L1-03-01. 闭包
L1[闭包]01. 函数的传递赋值 没什么说的 1.函数作为变量来看 可以轻松的声明 相互赋值 2.函数变量本质是 一个内存指针 所以函数变量的相互赋值不是传递的函数本身 而是指向这个函数的内存地址 ...
- angularJS 十六进制与字符串相互转换
angular 将字符串数据转换为十六进制数据 /** * @Description: TODO 字符串转16进制方法 * @author wjw * @date 2019年9月18日16:35:32 ...
- Oracle创表操作记录
Oracle表操作 --主键,复合主键 create table example (id number primary key, name varchar2(20)); create table ex ...
- python调用sqlite
参考资料:https://www.liaoxuefeng.com/wiki/1016959663602400/1017801751919456 https://www.cnblogs.com/lia ...
- 使用表单对象时,报错 form is undefine
先看例子 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <ti ...
