如何从Windows Service Bus订阅中获取未处理的消息计数?

Pau*_*yer 5 c# asynchronous servicebus azure autoscaling

我正在研究一个需要自动扩展工作进程的系统,该进程从服务总线主题中提取消息以进行处理.

为此,我需要知道给定订阅的未处理消息的数量.我怎么做?

我查看了SubscriptionClient类,但似乎没有办法找到等待处理的消息数.

在此输入图像描述

Tom*_*ove 2

您可以使用NamespaceManager来获取您的QueueDescriptionTopicDescription通过使用GetMessage(_name_)GetTopic(_name_)。这些描述将值公开为MessageCount

希望这可以帮助!

  • 仅供参考,MessageCount 包括 Topic\Subcrition 中的所有消息(死信和已传输)。使用 MessageCountDetails 属性单独拆分计数。另请注意,这些计数似乎存在一个错误,因为除非“队列”上最近发生了一些活动,否则它们报告 0。 (2认同)