【问题标题】:Am I able to view a list of devices by partition in iothub?我可以在iothub中按分区查看设备列表吗?
【发布时间】:2021-10-18 14:56:22
【问题描述】:

我有 2 个集群节点从 iothub 接收消息。我按分区分摊他们的责任。节点 1 从分区 1、3、5、7、9 和其他 2、4、6、8 和 0 读取。最近,我的分区 8 停止响应,直到我停止我的代码并重新启动它。似乎设备正在发送锁定分区的消息。我想要做的是列出我的分区 8 中的所有设备。这可能吗?是否有云 shell 命令可以将这些设备放入列表中?

【问题讨论】:

    标签: azure-iot-hub azure-iot-hub-device-management


    【解决方案1】:

    不确定这会对您有所帮助,但您可以看到传入消息的分区。例如,您可以使用 Azure 流分析来查看使用此查询的分区:

    Select GetMetadataPropertyValue(IoTHub, '[IoTHub].[ConnectionDeviceId]') as DeviceId, partitionId
    from IoTHub
    

    此外,如果您在 VisualStudio 中本地运行,它会告诉您哪个设备正在发送格式错误的 JSON。例如。

    [警告] 2021 年 10 月 21 日上午 9:12:54:用户警告源“IoTHub”在处理时间“2021-10-21T15”之间出现了 1 次“InputDeserializerError.InvalidData”类型:12:50.5076449Z' 和 '2021-10-21T15:12:50.5712076Z'。无法将来自资源“分区:[1]、偏移量:[455266583232]、序列号:[634800]、DeviceId:[DeviceName]”的输入事件反序列化为 Json。一些可能的原因:1)格式错误的事件 2)输入源配置错误的序列化格式

    还要检查 ASA 作业中的“活动日志”边栏选项卡。它可能会为您提供更多详细信息。

    【讨论】:

    • 这不是我特别要求的,但我认为这将为我提供回答我实际提出的问题所需的信息。
    猜你喜欢
    • 1970-01-01
    • 2020-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-23
    • 2018-04-01
    • 2014-10-22
    • 2011-02-07
    相关资源
    最近更新 更多