2

デッドレター キュー内のすべてのメッセージを取得し、それらをのぞき見する方法に関する適切なドキュメントを見つけるのは非常に困難です。

Azure Servicebus キューがあり、見つけることができるものはすべて Azure Servicebus トピック用です。

誰かがクイックガイドを手伝ってくれますか?

4

4 に答える 4

4

デッド レター キューは、有害なメッセージが移動されるセカンダリ サブキューです。

Azure Servicebus Queue の場合、DLQ の標準パスは ですqueuePath/$DeadLetterQueuequeueClientしたがって、DLQ を読み取るには別のものが必要です。

そして、.NET クライアントでこのようなことを行います。

string connectionString = CloudConfigurationManager.GetSetting("Microsoft.ServiceBus.ConnectionString");
var client = QueueClient.CreateFromConnectionString(connectionString, "QueueName");

// do whatever regular queue reading activities

// this is for dead letter queue
var deadLetterClient = QueueClient.CreateFromConnectionString(connectionString, QueueClient.FormatDeadLetterPath(client.Path), ReceiveMode.ReceiveAndDelete);

BrokeredMessage receivedDeadLetterMessage;
while ((receivedDeadLetterMessage = deadLetterClient.Receive(TimeSpan.FromSeconds(10))) != null)
{
    Console.WriteLine(receivedDeadLetterMessage);
}
于 2016-08-05T08:18:03.580 に答える