带有 serviceBusTrigger 的 Azure Function 停止接收消息

Azure Function with serviceBusTrigger stops receiving messages

我已将 Azure Function 配置为 servieBusTrigger 以从 Azure 服务总线上的主题订阅接收消息。该功能已经 运行 好几天了,但是今天早上我注意到订阅上有很多消息。事实证明,我的函数不再从队列中接收消息。

我检查了队列以确保消息不在死信队列中。他们不是。我在我的函数中进行了登录,但没有找到日志语句(这是我没有预料到的,因为消息从未被处理过)。我检查了 Kudu 上的日志文件 (`LogFiles\Application\Functions\Function\MyFunction)。它是空的,我确实通过门户启用了应用程序日志记录。

这是我的 function.json:

{
  "disabled": false,
  "bindings": [
    {
      "name": "mySbMsg",
      "type": "serviceBusTrigger",
      "direction": "in",
      "topicName": "tasks-v1",
      "subscriptionName": "errormail-v1",
      "connection": "connection",
      "accessRights": "Manage"
    }
  ]
}

正如我之前所写,该函数确实可以正常工作几天。我在运行消费计划中,为什么一直开应该不是问题。

有什么调试方法吗?

更新:为了将来参考,我们更新了修复问题的编译函数(这是有道理的,因为错误在 Roslyn 中)。

你的函数 运行 出现在 roslyn 编译的这个错误中,通过重启解决了这个错误:https://github.com/Azure/azure-webjobs-sdk-script/issues/999

我在你的函数应用程序日志中看到了这个错误:

2017-03-28 23:14:11.6306121 Cannot enqueue data after PromiseNotToEnqueue.

这是一个偶发问题,但如果您需要解决方法,可以使用 precompiled functions