Azure IoT 中心 - 启用路由时 IoT 中心触发器不执行

Azure IoT Hub - IoT Hub Trigger does not execute when route is enabled

我正在尝试使用由 IoT 中心触发的功能将发送到 IoT 中心的 JSON 文件保存到 cosmos DB。我也在尝试将相同的文件保存到 blob 中以进行长期存储。

目前功能和路由独立运行良好,但不能同时运行(启用路由时不触发该功能,仅在不启用路由时触发该功能。)

https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-quotas-throttling#other-limits

Limitation of F1 Free tier IoT Hub

我在 IoT 中心配额和限制文档中了解到,免费层只能同时执行一项作业。我不确定这是否是阻碍我的限制,或者我这边的错误配置。

我想到的一个可能的解决方案是将流量路由到总线队列,并改为从中触发函数。

非常感谢任何帮助,

谢谢!

路由的消息不会自动转到默认端点,因此您的触发器不会再触发。

在 IoTHub 的 Azure 门户的“消息路由”页面中有一条说明对此进行了解释:

"创建一个终结点,然后添加一个路由(每个 IoT 中心最多可以添加 100 个路由)。由于路由是基于匹配查询的,因此一条消息可以发送到多个端点。如果您启用了回退路由,与查询不匹配的消息将自动发送到 messages/events。当您创建新的端点和路由时,消息将停止流向 built-in 端点,除非您创建一个单独的路由并将它们定向到那里。如果不存在到 built-in 端点的路由,启用后备路由会将任何与路由查询不匹配的消息定向到该端点。"

因此,如果您希望所有消息始终路由到默认端点,只需为此添加一个单独的路由。