本文主要分享一个案例:

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)- 使用消息路由将原始设备数据记录存档的更多相关文章

  1. Azure IoT Hub 十分钟入门系列 (2)- 使用模拟设备发送设备到云(d2c)的消息

    本文主要分享一个案例: 10分钟- 使用Python 示例代码和SDK向IoT Hub 发送遥测消息 本文主要有如下内容: 了解C2D/D2C消息: 了解IoT Hub中Device的概念 了解并下载 ...

  2. Azure IoT Hub 十分钟入门系列 (1)- 10分钟带你了解Azure IoT Hub 并创建IoT Hub

    建议您先对<Azure 上 IoT 整体解决方案概览 >进行了解. 本文主要分享一个案例: 10分钟-了解Azure IoT Hub并创建Azure IoT Hub 本文主要有如下内容: ...

  3. Azure IoT Hub 十分钟入门系列 (4)- 实现从设备上传日志文件/图片到 Azure Storage

    本文主要分享一个案例: 10分钟内通过Device SDK上传文件到IoTHub B站视频:https://www.bilibili.com/video/av90224073/ 本文主要有如下内容: ...

  4. Azure IoT Hub和Event Hub相关的技术系列-索引篇

    Azure IoT Hub和Event Hub相关的技术系列,最近已经整理了不少了,统一做一个索引链接,置顶. Azure IoT 技术研究系列1-入门篇 Azure IoT 技术研究系列2-设备注册 ...

  5. Azure IoT 技术研究系列2-起步示例之设备注册到Azure IoT Hub

    上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...

  6. Azure IoT 技术研究系列2-设备注册到Azure IoT Hub

    上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...

  7. 30分钟连接树莓派到微软云 Azure IoT Hub,并将数据进行可视化

    更多内容,关注公众号: 树莓派是很多动手达人必备的小玩具,本节内容,让我们拿出树莓派,在30分钟内,将树莓派连接到微软云Azure的IoT Hub,然后将温湿度曲线可视化.(本节内容完整视频在文章末尾 ...

  8. 基于Azure IoT开发.NET物联网应用系列-全新的Azure IoT架构

    物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是物联网技术的最大应用,车联网.物联网.互联网三网合一.2017年的时候重点研究过Azure Io ...

  9. 十分钟入门less(翻译自:Learn lESS in 10 Minutes(or less))

    十分钟入门less(翻译自:Learn lESS in 10 Minutes(or less)) 注:本文为翻译文章,因翻译水平有限,难免有缺漏不足之处,可查看原文. 我们知道写css代码是非常枯燥的 ...

随机推荐

  1. 502. IPO(最小堆+最大堆法 or 排序法)

    题目: 链接:https://leetcode-cn.com/problems/ipo/submissions/ 假设 力扣(LeetCode)即将开始其 IPO.为了以更高的价格将股票卖给风险投资公 ...

  2. AtCoder Beginner Contest 153 题解

    目录 AtCoder Beginner Contest 153 题解 A - Serval vs Monster 题意 做法 程序 B - Common Raccoon vs Monster 题意 做 ...

  3. C语言sprintf函数的深入理解

    由于sprintf跟printf在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出.这也导致sprintf比printf有用得多.所以本文着重介绍sprintf, ...

  4. 【C语言】输入一个整数x并判断x是否存在于数组a中

    #include<stdio.h> int main() { ] = { ,,,,,,,, };//数组初始化 printf("请输入要查找的数据:\n"); scan ...

  5. C语言结构体数组遇上typedef

    昨天韩同学在做数据结构题的时候,问了我一个关于typedef 与结构体数组的问题: typedef struct vexnode { int vertex; arcnode* firstarc; }a ...

  6. shell内置命令和外部命令的区别

    内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在linux系统加载运行时shell就被加载并驻留 ...

  7. dp--C - Mysterious Present

    C - Mysterious Present Peter decided to wish happy birthday to his friend from Australia and send hi ...

  8. c++/cli mixed codes for standard c++ and csharp

    混合DotNet与Win32API来实现的Hidlibrary,c/c++可直接使用,c#可直接使用 异步IO,拔插事件订阅,数据读取事件订阅 工程目录结构 HidEvent.h #pragma on ...

  9. http请求常见错误状态码

    一.HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求.不作修改,客户程序就无法重复此请求. 原因:(调用方接口方法的实参和服务器接口方法的形参不一致) 1.前端提交数据 ...

  10. AcWing 831. KMP字符串

    #include <iostream> using namespace std; , M = ; int n, m; int ne[N];//ne[i] : 以i为结尾的部分匹配的值 ch ...