gpt4 book ai didi

azure - IoT 中心和 ASA 输入之间的 JSON 反序列化过程中部分数据丢失

转载 作者:行者123 更新时间:2023-12-03 02:14:07 29 4
gpt4 key购买 nike

Setup is: IoT Hub > input into > Stream Analytics

我目前有 (3) 个传感器和一个来自 ncd.io 的 azure 网关,它们都向 Azure IoT 中心报告良好。

在 ASA 中设置 IoT 中心输入时,来自传感器的记录数据只有两个元素通过自动 JSON 反序列化。

我在 IoT 中心设置了一个设备,它会从本地网关报告正确的设备孪生数据,如下所示:

"reported": {
"nodes": {
"SN0013A20041DADDF7": {
"firmware_version": 10,
"transmission_count": 192,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 27.93,
"temperature": 22.28
},
"SN0013A20041DADD51": {
"firmware_version": 10,
"transmission_count": 175,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 42.25,
"temperature": 22.55
},
"SN0013A20041DADE33": {
"firmware_version": 10,
"transmission_count": 217,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 39.33,
"temperature": 22.62
}
},

我将 IoT 中心的 ASA 输入设置为 JSON,且不进行压缩。 ASA 中的结果看起来不错,但第一个位置“节点”似乎被排除在结果之外

 [
{
"nodes": {
"SN0013A20041DADE33": {
"firmware_version": 10,
"transmission_count": 164,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 39.01,
"temperature": 23.08
}
},
"EventProcessedUtcTime": "2022-05-02T20:39:23.3568635Z",
"PartitionId": 3,
"EventEnqueuedUtcTime": "2022-05-02T19:55:43.2820000Z",
"IoTHub": {
"MessageId": null,
"CorrelationId": null,
"ConnectionDeviceId": "***",
"ConnectionDeviceGenerationId": "***",
"EnqueuedTime": "2022-05-02T19:55:43.1570000Z"
}
},
{
"nodes": {
"SN0013A20041DADD51": {
"firmware_version": 10,
"transmission_count": 122,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 42.09,
"temperature": 22.62
}
},
"EventProcessedUtcTime": "2022-05-02T20:39:23.3568635Z",
"PartitionId": 3,
"EventEnqueuedUtcTime": "2022-05-02T19:55:40.8290000Z",
"IoTHub": {
"MessageId": null,
"CorrelationId": null,
"ConnectionDeviceId": "***",
"ConnectionDeviceGenerationId": "***",
"EnqueuedTime": "2022-05-02T19:55:40.8130000Z"
}
},
{
"nodes": {
"SN0013A20041DADE33": {
"firmware_version": 10,
"transmission_count": 163,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 38.9,
"temperature": 23.14
}
},
"EventProcessedUtcTime": "2022-05-02T20:39:23.3568635Z",
"PartitionId": 3,
"EventEnqueuedUtcTime": "2022-05-02T19:55:03.7180000Z",
"IoTHub": {
"MessageId": null,
"CorrelationId": null,
"ConnectionDeviceId": "***",
"ConnectionDeviceGenerationId": "***",
"EnqueuedTime": "2022-05-02T19:55:03.6710000Z"
}
},
{
"nodes": {
"SN0013A20041DADD51": {
"firmware_version": 10,
"transmission_count": 121,
"reserve_byte": 0,
"battery_level": 3.29406,
"type": 1,
"node_id": 0,
"rssi": 100,
"humidity": 42.22,
"temperature": 22.65
}
},

我确实没有找到任何选项来调整它,因为它都是单个记录的一部分...我可以查询我收到的数据并将其输出,没有问题。

Example output in ASA

Reference of the issue

最佳答案

在深入研究传感器后,发现丢失的传感器存在报告问题,并且明显落后于集线器上的其他两个设备,导致其从结果中删除。

在重新启动传感器并对数据进行采样后,我能够接收所有三个传感器并将它们毫无问题地传递到 PowerBI。

感谢@Florian-Eiden 的所有帮助!

关于azure - IoT 中心和 ASA 输入之间的 JSON 反序列化过程中部分数据丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72092350/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com