私は(テスト目的のために、私はIntegerSerializer/IntegerDeserializerを使用している)私のカフカの設定で値のシリアライザ/デシリアライザを変更する必要があります。 JAVA APIを使用すると、期待どおりに動作します。ただし、コンソールツールを使用すると、正しく動作しないように見えます。kafka-console-producerは値シリアライザを無視しますか?
私が行っていることをトラブルシューティングのすべてが一つの結論に私をリードしている:カフカ・コンソール・プロデューサーは、シリアライザのオプションを無視していることが表示されます。私は--property value.serializer
と--producer-property value.serializer
と--value-serializer
を試してみましたが、--producer.config
引数を指定した設定でそれを設定しています。
そのちょうど整数としてデータをシリアル化するために失敗していない私は、引数の値としてナンセンスを入力すると、それも気にしません。 --value-deserializer not.a.real.class
と入力すると、kafka-console-consumer(IntegerDeserializerと完全に機能します)では、例外が見つからないという例外がスローされます。しかし、kafka-console-producerの--value-serializer not.a.real.class
は何もしません。
これらの値をJAVA APIのプロデューサに設定すると、完全に動作します(シリアライザクラスとしてナンセンスを入力すると例外がスローされます)。ただし、kafka-console-producerを使用している場合は例外が発生します。
kafka-console-consumer --bootstrap-server IPADDRESS:9092 --topic TOPIC --property value.deserializer=org.apache.kafka.common.serialization.IntegerDeserializer
は、誰もがこのコマンドでの作業を取得するために管理しています:
kafka-console-producer --broker-list IPADDRESS:9092 --topic TOPIC --property value.serializer=org.apache.kafka.common.serialization.IntegerSerializer
および関連消費者:
この
は、私は、コンソールプロデューサーを実行しようとした方法の一つの例でありますラインツール?私が行方不明になっていることは明らかですか?
私はこれをGoogleに試してみましたが、その動作例が見つかりませんでした。そのJIRAは2015年からのものであり、残念です。ありがとうございました。 – latreides