在使用 EventProcessor 类监听 EventHub 上的事件的 webjobs 上启用应用程序洞察后,我们看到它不断尝试访问配置的 blob 存储帐户中的一组不存在的队列。我们尚未在此帐户上配置任何队列。
我的代码中没有任何地方引用队列,并且据我了解,EventProcessorHost 使用 blob 存储而不是队列来维护状态。那么:为什么它要尝试访问队列?
最佳答案
您看到的队列访问来自 JobHost
本身,而不是来自 EventHub 等任何特定触发器类型。 WebJobs SDK 在幕后使用一些存储资源来进行自己的操作,例如控制队列来跟踪其自身的工作,blob 用于存储仪表板中显示的日志信息等。
在您上面提到的特定情况下,正在访问的那些控制队列是我们的仪表板调用/重播/中止支持的一部分。我们有一个 Unresolved 问题 here在我们的仓库中跟踪我们可以在这方面做出的潜在改进。请随时就这个问题发表意见。
关于Azure EventHubs EventProcessorHost 尝试访问 Azure 存储队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40809239/