首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何访问Azure物联网边缘管道中的各种时间戳?

如何访问Azure物联网边缘管道中的各种时间戳?
EN

Stack Overflow用户
提问于 2018-06-13 02:31:59
回答 1查看 877关注 0票数 0

我有两个简单的管道在Azure物联网边缘。现在,我对访问添加到管道中每个步骤/节点的物联网消息的时间戳感兴趣。例如,enqueuingTime在IoTHub和ASA,processedTime来自IoTHub和ASA等。下面是管道:

  1. IoT边缘设备(输入数据源) -> IoTHub ->客户端到Azure存储+路由-> Azure Blob 到目前为止,我发现每个物联网消息都被附加到一个blob文件中,其中包含一个属性EnqueuedTimeUtcSystemProperties.enqueuedTime。同时,两者显示相同的值。这是在IoTHub中接收消息的时间,还是在IoTHub中内部处理消息的时间? 此外,如果我在Azure存储中使用自定义端点,则将消息批处理到单个blob文件中。当单个消息离开IotHub时,以及当它被写入blob文件时,是否有可能访问时间戳?(也就是说,我想得到类似于单个消息的IoTHub-Processed-TimestampBlob-Insertion-Timestamp。)
  2. IoT边缘设备(输入数据源) -> IoTHub -> Azure Stream Analytics -> Azure SQL数据库 在本例中,当我定义ASA查询时,输入是IoTHub端点Messaging。在Select语句中,我可以访问整个消息头,因此,我还可以访问EventEnqueuedUtcTimeEventProcessedUtcTime,这是Stream作业中消息队列和进程完成的时间戳。此外,我还可以访问IoTHub.EnqueuedTime,假设消息在IoTHub中排队时会给出时间戳。当消息从ASA进入并插入到SQL时,是否有一种获得时间戳的方法?到目前为止,我正在使用GETDATE()在插入记录期间自动附加时间戳。这是个好主意吗 如果我对Azure Iot时间戳有正确的理解,请让我知道好吗?是否有关于如何访问所有这些时间戳的文档?
EN

回答 1

Stack Overflow用户

发布于 2018-06-13 06:18:05

EventEnqueuedUtcTime是流分析中来自IoT集线器的事件的默认时间戳,是事件到达IoT集线器的时间戳。EventProcessedUtcTime是由Stream处理事件的日期和时间。更多信息,这里是文档。正如您在使用来自IoT集线器的流数据时所提到的,您可以访问您的stream查询中的EventProcessedUtcTime和EventEnqueuedUtcTime。

当单个数据流包含在不同字段中具有时间戳的多个事件类型时,现在可以使用带有表达式的时间戳来为每个case.ASA指定不同的时间戳字段,因此每个流经数据流的事件都有一个时间戳。根据事件的到达时间自动为输入源分配时间戳,但也可以使用时间戳BY显式地访问事件有效负载中的时间戳。

更新:另外,EventEnqueuedUtcTime事件被IoT集线器接收的日期和时间。但是,IoTHub.EnqueuedTime消息被IoT集线器接收的时候。当设备/DeviceClient向IoTHub.Azure IoT集线器发送遥测消息时,在遥测路径上不支持IoTHub.EnqueuedTime,它提供了从连接设备中流数据并将这些数据集成到业务应用程序中的功能。IoT集线器提供消息路由和事件路由,用于将IoT事件集成到其他Azure服务或业务applications.More信息这里中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50828306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档