デッドレターキュー内のすべてのメッセージを取得し、それらを覗き込むことについては、いくつかの良い文書を見つけるのは非常に難しいです。私はAzureのサービスバス待ち行列を持っています。私が見つけることができるものはサービスバストピックです...誰かが簡単なガイドで私を助けることができますか?デッドレターメッセージを覗く方法
0
A
答えて
3
デッドレターキューは、ポイズンメッセージを移動するセカンダリサブキューです。 空白のサービスバスキューの場合、DLQの標準パスはqueuePath/$ DeadLetterQueueです。 このDLQを読むには、別のキューを用意する必要があります。
そして、あなたは.netクライアントでこれを行うでしょう。ここで
string connectionString = CloudConfigurationManager.GetSetting("Microsoft.ServiceBus.ConnectionString");
QueueClient Client = QueueClient.CreateFromConnectionString(connectionString, "QueueName");
// do whatever regular queue reading activities
// this is for dead letter queue
QueueClient deadLetterClient = QueueClient.CreateFromConnectionString(connectionString, QueueClient.FormatDeadLetterPath(Client.Path), ReceiveMode.ReceiveAndDelete);
BrokeredMessage receivedDeadLetterMessage;
while ((receivedDeadLetterMessage = deadLetterClient.Receive(TimeSpan.FromSeconds(10))) != null)
{
Console.WriteLine(receivedDeadLetterMessage);
}
0
string connectionString = ConfigurationManager.AppSettings["connectionString"];
string queueName = ConfigurationManager.AppSettings["queueName"];
ServiceBusConnectionStringBuilder builder = new ServiceBusConnectionStringBuilder(connectionString);
MessagingFactory factory = MessagingFactory.CreateFromConnectionString(builder.ToString());
var client = QueueClient.CreateFromConnectionString(connectionString, queueName);
string deadLetterQueuePath = QueueClient.FormatDeadLetterPath(queueName);
QueueClient deadletterQueueClient = factory.CreateQueueClient(deadLetterQueuePath);
while (true)
{
BrokeredMessage brokeredMessage = deadletterQueueClient.Receive();
// Your Logic
}
0
あなたがかいま見を使用不能キュー内のすべてのメッセージの一覧を取得する方法の例です:
public async Task<IEnumerable<BrokeredMessage>> GetDeadLetterMessagesAsync(string connectionString,
string queueName)
{
var queue = QueueClient.CreateFromConnectionString(connectionString, QueueClient.FormatDeadLetterPath(queueName));
var messageList = new List<BrokeredMessage>();
BrokeredMessage message;
do
{
message = await queue.PeekAsync();
if (message != null)
{
messageList.Add(message);
}
} while (message != null);
return messageList;
}
関連する問題
- 1. RabbitMqを覗く方法
- 2. キュー内のメッセージを覗く方法
- 3. IOS - 覗くとポップ - UITableViewCellの
- 4. 別のOracleセッションの内部を覗く方法はありますか?
- 5. Java Scannerの次の要素を「覗く」方法はありますか?
- 6. Azure NodeJS関数とサービスバス、デッドレターメッセージ
- 7. emberでidを使用するのではなく、名前を使用してレコードを覗く方法
- 8. Azureは全体の待ち行列を "覗く"?
- 9. urllib2レスポンスのデータを覗くことはできますか?
- 10. log4netのC#コードに記録されたメッセージを覗く方法はありますか?
- 11. Spring Bootを使用してRabbitMQデッドレターメッセージのx-deathヘッダーを読み取る方法は?
- 12. フィルタからMesageをどのように覗くことができますか?
- 13. 高級言語のデータグラムパケットを覗くことは可能ですか?
- 14. とにかく標準バッファーを覗いてもらえますか?
- 15. どのように覗き見&ポップカスタムアクション?
- 16. 期限切れのデッドレターメッセージをキューに戻す
- 17. デッドレターメッセージがttl後に元のキューに再キューイングされない
- 18. 限界を越えてスタックを覗き見している
- 19. bison/flex:次の文字またはトークンを覗きます
- 20. 覗き穴を使ったLSTMの実装
- 21. SQLデータベース(Paas)にAzure Storage Queueからメッセージを挿入するか、または覗く方法がありますか?
- 22. デッドレターメッセージがあるときにスキップされたキューを作成しない
- 23. 条件を満たす場合、どのようにベクトルとポップを覗くことができますか?
- 24. はビデオを持っている:覗くとポップ(3Dタッチ)した後、背景には、バグの
- 25. 3D Touchを使用してUIButtonで覗くとUIWebViewにコンテンツが表示されない
- 26. VHDLプライオリティエンコーダを短く書く方法
- 27. スパイダーウェブを描く方法
- 28. マイクプロパティウィンドウを開く方法
- 29. jButtonを開く方法は?
- 30. .bundleファイルを開く方法
しかし、私は本当にtopicPathが何であるか見当もつかない?これはキューでありトピックではないので –
申し訳ありません。キュークライアントでコードを更新しました。何らかの理由で私はあなたがトピックとサブを求めたと思った。 – Aravind
それはwhileループに来るときうーん、これは私に次のエラーを与える:40103:無効な認証トークン署名、 おかげしかし は型「System.UnauthorizedAccessException」の未処理の例外は 追加情報Microsoft.ServiceBus.dllに発生しました! –