Service Bus Explorer を使用して Service Bus でデータ操作を実行する
Azure Service Bus を使用すると、送信側と受信側のクライアント アプリケーションは、使い慣れたポイントツーポイント (キュー) および発行とサブスクライブ (トピックサブスクリプション) セマンティクスを使用してビジネス ロジックを分離できます。
注意
この記事では、Azure portal の一部である Azure Service Bus Explorer の機能について説明します。
コミュニティが所有するオープンソースの Service Bus Explorer はスタンドアロン アプリケーションであり、これとは異なるものです。
Azure Service Bus 名前空間に対して実行される操作は 2 種類あります。
- 管理操作 - Service Bus 名前空間、キュー、トピック、およびサブスクリプションの作成、更新、削除。
- データ操作 - キュー、トピック、サブスクリプションとの間のメッセージの送受信。
重要
- Service Bus Explorer では、管理操作とセッションはサポートされていません。
- Service Bus エクスプローラーをより大きなメッセージで使用することをお勧めするのは、これが原因で、メッセージ サイズ、クライアントと Service Bus サービス間のネットワーク待機時間などによっては、タイムアウトが生じる可能性があるからです。代わりにお勧めするのは、ご自分のクライアントを使用してより大きなメッセージに対処することです。そうすれば、ご自分のタイムアウト値を指定することができます。
前提条件
Service Bus Explorer ツールを使用するには、次のタスクを実行する必要があります。
メッセージを送受信するためのキューや、機能をテストするためのトピックとサブスクリプションを作成します。 キュー、トピック、およびサブスクリプションを作成する方法については、次の記事を参照してください。
Note
送受信 (ピークおよび消去を含む) 操作を実行する名前空間またはエンティティで、次のいずれかのロールのメンバーであることを確認してください。
- Service Bus データ所有者: 送受信操作の両方を許可します。
- Service Bus データ送信者: 送信操作を許可します。
- Service Bus データ受信者: 受信操作を許可します。
Service Bus Explorer を使用する
Service Bus Explorer を使用するには、データ操作を行う Service Bus 名前空間に移動します。
キューに対して操作を実行する場合は、ナビゲーション メニューから[キュー] を選択します。 トピック (とそれに関連するサブスクリプション) に対して操作を実行する場合は、[トピック] を選択します。
[キュー] または [トピック] を選択した後、特定のキューまたはトピックを選択します。
左側のナビゲーション メニューで [Service Bus エクスプローラー] を選びます
メッセージをクイック表示する
クイック表示機能を使用すると、Service Bus Explorer を使用してキュー、サブスクリプション、または配信不能キューの上位 100 個のメッセージを表示できます。
メッセージをクイック表示するには、Service Bus Explorer のドロップダウンで [クイック表示モード] を選択します。
メトリックを調べて、クイック表示するアクティブ メッセージまたは配信不能メッセージがあるかどうかを確認し、[Queue / Subscription] (キュー/サブスクリプション) または [配信不能] サブキューを選択します。
[最初からクイック表示] ボタンを選択します。
ピーク操作が完了すると、次の画像のように最大 100 個のメッセージがグリッドに表示されます。 特定のメッセージの詳細を表示するには、グリッドから選択します。 本文またはメッセージのプロパティの表示を選択できます。
下のペインの [メッセージ プロパティ] タブに切り替えて、メタデータを表示します。
注意
クイック表示は破壊的な操作ではないため、メッセージはエンティティから削除されません。
詳細オプションを使用してメッセージをクイック表示する
クイック表示機能のオプションを使用すると、Service Bus Explorer を使用してキュー、サブスクリプション、または配信不能キューの上位のメッセージを表示し、クイック表示するメッセージの数と、クイック表示操作を開始するシーケンス番号を指定できます。
詳細オプションを使用してメッセージをクイック表示するには、Service Bus Explorer のドロップダウンで [クイック表示モード] を選択します。
メトリックを調べて、クイック表示するアクティブ メッセージまたは配信不能メッセージがあるかどうかを確認し、[Queue / Subscription] (キュー/サブスクリプション) または [配信不能] サブキューを選択します。
[オプションを指定してクイック表示] ボタンを選択します。 クイック表示するメッセージの数と、クイック表示を開始するシーケンス番号を指定して、[クイック表示する] ボタンを選択します。
ピーク操作が完了すると、次の画像のようにメッセージがグリッドに表示されます。 特定のメッセージの詳細を表示するには、グリッドから選択します。 本文またはメッセージのプロパティの表示を選択できます。
下のペインの [メッセージ プロパティ] タブに切り替えて、メタデータを表示します。
注意
ピークは破壊的な操作ではないため、メッセージはキューから削除されません。
メッセージを受信する
Service Bus Explorer の受信機能を使用すると、キューまたはサブスクリプションからメッセージを受信できます。
メッセージをクイック表示するには、Service Bus Explorer のドロップダウンで [Receive Mode](受信モード) を選択します。
メトリックを調べて、受信するアクティブ メッセージまたは配信不能メッセージがあるかどうかを確認し、[Queue / Subscription](キュー/サブスクリプション) または [配信不能] を選択します。
[メッセージの受信] ボタンを選択し、受信モード、受信するメッセージの数、メッセージを待機する最大時間を指定して、[受信] を選択します。
重要
ReceiveAndDelete モードは、"破壊的受信" であることに注意してください。つまり、メッセージは Service Bus Explorer ツールに表示されると、キューから削除されます。
キューから削除せずにメッセージを参照するには、クイック表示機能または PeekLock 受信モードの使用を検討します。
受信操作が完了すると、次の画像のようにメッセージがグリッドに表示されます。 特定のメッセージの詳細を表示するには、グリッドで選択します。
注意
パフォーマンス上の理由から、1 MB を超える最大メッセージ サイズが設定されているキューまたはサブスクリプションからメッセージを受信するときに、一度に受信されるメッセージは 1 つのみです。 メッセージ本文が 1 MB を超える場合は、表示される前に切り詰められます。
PeekLock モードでメッセージを受信した後は、それに対してさまざまなアクションを実行できます。
Note
これらのアクションは、メッセージをロックしてある場合にのみ実行できます。
メッセージを完了する
グリッドで、完了する受信メッセージを選択します。
[完了] ボタンを選択します。
重要
メッセージの完了は "破壊的な受信" であることに注意してください。つまり、Service Bus Explorer ツールで [完了] を選択すると、メッセージがキューから削除されます。
メッセージを延期する
グリッドで、延期する 1 つ以上の受信メッセージを選択します。
[延期] ボタンを選択します。
ロックを破棄する
ロックが破棄されると、メッセージは再び受信操作に使用できるようになります。
[配信不能メッセージ]
グリッドで、配信不能にする 1 つ以上の受信メッセージを選択します。
[配信不能メッセージ] ボタンを選択します。
配信不能になったメッセージは、配信不能サブキューから使用できるようになります。
メッセージを消去する
メッセージを消去するには、Service Bus Explorer の [メッセージの消去] ボタンを選択します。
操作で確認するために「purge」と入力すると、メッセージはそれぞれの Service Bus エンティティから消去されます。
キューまたはトピックにメッセージを送信する
メッセージをキューまたはトピックに送信するには、Service Bus Explorer の [メッセージの送信] ボタンを選択します。
[コンテンツの種類] として、'Text/Plain'、'Application/Xml'、'Application/Json' のいずれかを選択します。
[メッセージの本文] に、メッセージの内容を追加します。 設定した [コンテンツの種類] と一致していることを確認します。
[ブローカーのプロパティ] を設定します (省略可能)。 関連付け ID、メッセージ ID、返信先、ラベル/件名、Time to Live (TTL)、スケジュールされたエンキュー時刻 (スケジュールされたメッセージの場合) などのプロパティがあります。
[カスタム プロパティ] を設定します (省略可能)。 ディクショナリ キーに対して設定された任意のユーザー プロパティを指定できます。
同じメッセージを複数回送信するには、[Repeat send](繰り返し送信) をオンにします。 メッセージ ID が設定されていない場合は、連続した値が自動的に設定されます。
メッセージを作成したら、[送信] ボタンを選択します。
送信操作が正常に完了すると、次のいずれかの変化が起きます。
- キューに送信している場合は、アクティブなメッセージのメトリック カウンターが増えます。
- トピックに送信している場合は、メッセージのルーティング先サブスクリプションのアクティブなメッセージのメトリック カウンターが増えます。
メッセージを送信する
メッセージをクイック表示または受信した後、メッセージを再送信できます。これにより、メッセージのコピーが同じエンティティに送信されますが、その内容とプロパティを更新できます。 オリジナルは残り、再送信が配信不能キューからのものであっても削除されません。
グリッドで、再送信する 1 つ以上のメッセージを選択します。
[Re-send selected messages](選択したメッセージの再送信) ボタンを選択します。
必要に応じて、詳細を更新するメッセージを選択し、必要な変更を行います。
[送信] ボタンを選択して、エンティティにメッセージを送信します。
注意
- 再送信操作により、元のメッセージのコピーが送信されます。 再送信した元のメッセージは削除されません。
- サブスクリプションの配信不能キューにメッセージを再送信すると、メッセージのコピーがトピックに送信されます。 したがって、すべてのサブスクリプションはメッセージのコピーを受け取ります。
認証の種類を切り替える
Service Bus Explorer を使用するときは、アクセス キーまたは Microsoft Entra ID 認証を使用できます。
次の手順
- Service Bus のキューとトピックについて詳細を確認します
- Azure portal を使用した Service Bus キューの作成について詳細を確認します
- Azure portal を使用した Service Bus のトピックとサブスクリプションの作成について詳細を確認します