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