如何获取Azure Service Bus队列中的死信消息计数?
问题描述:
如何获取Azure Service Bus队列中的死信消息计数?
How do you get the count of dead letter messages in an Azure Service Bus queue?
我可以像这样获得队列中的计数...
I can get the count in the queue like so ...
var ns = NamespaceManager.CreateFromConnectionString(sbConnectionString);
var queue = ns.GetQueue(queueName);
var count = queue.MessageCount;
但这看起来既包括队列中的消息,也包括相关的死信队列中的消息
But this looks to include both messages in the queue, and also messages in the associated dead letter queue
如何区分它们?
答
请查看 QueueDescription
.您将找到 DeadletterMessageCount
在那里将为您提供所需的信息.
Do take a look at MessageCountDetails
property in QueueDescription
. You will find DeadletterMessageCount
there which will provide you the information you're looking for.
var ns = NamespaceManager.CreateFromConnectionString(sbConnectionString);
var queue = ns.GetQueue(queueName);
var count = queue.MessageCount;
var deadletterMessagesCount = queue.MessageCountDetails.DeadletterMessageCount;