Azure Event Hubs プロデューサーのトラブルシューティング
この記事では、EventHubsProducerClient
と EventHubsProducerAsyncClient
型を使用する際に発生する場合がある一般的な問題の解決策について説明します。 Event Hubs の使用時に発生する可能性がある他の一般的な問題の解決策については、「Azure Event Hubs のトラブルシューティング」を参照してください。
EventDataBatch でイベント用の複数のパーティション キーを設定できない
Event Hubs サービスが、メッセージを発行する際、各 EventDataBatch
に 1 つのパーティション キーがサポートされます。 その機能が必要な場合は、バッファリングされたプロデューサー クライアント EventHubBufferedProducerClient
の使用を検討する必要があります。 それ以外の場合は、バッチを管理する必要があります。
Kafka コンシューマーで EventData にパーティション キーが設定されない
Event Hubs イベントのパーティション キーは、Kafka レコード ヘッダーで使用できます。 プロトコル固有のキーは、ヘッダーの x-opt-partition-key
です。
設計上、Event Hub は、Kafka メッセージ キーを、Event Hub パーティション キーに昇格しませんし、その逆もしません。これは、同じ値を使用すると、Kafka クライアントと Event Hub クライアントが、2 つの異なるパーティションにメッセージを送る可能性が高いためです。 クロスプロトコル通信の場合に値を設定すると、混乱が生じる場合があります。 プロトコル固有のキーを持つプロパティを他のプロトコル クライアントに公開するだけで十分です。
次のステップ
この記事のトラブルシューティング ガイダンスが、Azure SDK for Java クライアント ライブラリを使用するときの問題の解決に役立たない場合は、Azure SDK for Java GitHub リポジトリに問題を提出することをお勧めします。