C# Winforms プロジェクトで Azure Event Hubs を使用しています。
EventProcessorHost オブジェクトと EventReciever オブジェクトを作成して、イベント ハブからメッセージを取得して表示する作業を実行します。
メッセージ取得プロセスの一部には、フォームが開かれたときにイベント ハブに新しいコンシューマー グループを作成することが含まれます。(コンシューマ グループ名を新しい GUID にするだけです)。
この^すべてが機能します。
フォームが閉じられると、コンシューマー グループはイベント ハブから削除されます。これは、ポータルを通じてイベント ハブを表示することによって検証されます。
ただし、イベント ハブの作業を行うためにコンシューマー グループによって使用されるパーティション オブジェクトは、まだストレージ アカウントに存在します。
CloudBerry エクスプローラーを使用すると、次のように表示されます。
各 GUID はコンシューマー グループです。私の開発の最後の数か月でここには数百ありますが、イベント ハブには一度に 20 のアクティブなコンシューマー グループしか含めることができません。
各コンシューマー グループ フォルダー内には、そのコンシューマー グループが使用する 4 つのパーティションのそれぞれに関する情報を含む 4 つのファイルがあります。
これらを自動的にクリーンアップできるイベント ハブ オブジェクト (EventReceiver、EventProcessorHost など) の API 呼び出しはありますか? 調べましたが、何も見つかりませんでした。現在、Event Hubs に関するドキュメントは最小限です。
EventProcessorHost.PartitionManagerOptions.SkipBlobContainerCreation = true を見ましたが、これは役に立ちませんでした。
そうでない場合、このジャンクの蓄積を避けるために設定する必要があるストレージ アカウントの設定はありますか?
ありがとう!