kafka控制台生成器忽略值序列化程序?

j9per5c4  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(391)

我需要更改kafka设置中的值序列化程序/反序列化程序(出于测试目的,我一直在使用integerserializer/integerdeserializer)。使用javaapi,它完全按照预期工作;但是,当使用控制台工具时,它似乎无法正常工作。
我所做的所有故障排除都让我得出了一个结论:kafka控制台生产者似乎忽略了序列化程序选项。我试过了 --property value.serializer 以及 --producer-property value.serializer 以及 --value-serializer 并将其设置为 --producer.config 争论。
它不仅无法将数据序列化为整数,而且它甚至不关心是否输入无意义的参数值。如果我进入 --value-deserializer not.a.real.class 它将抛出一个类找不到异常;然而 --value-serializer not.a.real.class Kafka游戏机制作人,什么都不做。
在javaapi中的producer上设置这些值可以很好地工作(如果我在serializer类中输入drouse,则会抛出一个异常),但在使用kafka控制台producer时不会。
这是我尝试运行console producer的方法之一的示例:

kafka-console-producer --broker-list IPADDRESS:9092 --topic TOPIC --property value.serializer=org.apache.kafka.common.serialization.IntegerSerializer

以及相关消费者:

kafka-console-consumer --bootstrap-server IPADDRESS:9092 --topic TOPIC  --property value.deserializer=org.apache.kafka.common.serialization.IntegerDeserializer

有没有人能用命令行工具实现这一点?我有什么明显的遗漏吗?

kuhbmx9i

kuhbmx9i1#

这是控制台生成器中的一个已知错误。你可以通过传递 --old-producer 工具的选项。

相关问题