如何使用 kafka 工具集生成具有空值的 Kafka 记录

Sto*_*ole 2 apache-kafka

我正在使用以下命令:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test.topic --property parse.key=true --property key.separator=#
Run Code Online (Sandbox Code Playgroud)

这允许我开始输入key#value条目。

但是,无论我尝试什么,我都无法创建条目。

如果我尝试发送 [myKey#] 并按 Enter,则在提要上我将看到该密钥的空消息,但不为空。

我需要创建一个 Null 值。

Ede*_*ill 6

kafkacat允许您通过-Z选项生成墓碑。

通过提供 -Z 解释为 NULL 的空消息值,为键“abc”生成墓碑(对于压缩主题的“删除”):

$ echo "abc:" | kafkacat -b mybroker -t mytopic -Z -K:


cri*_*007 5

控制台生成器无法生成空记录。它将输入解析为 UTF8 字符串

就我个人而言,我会编写一个简单的 python 或 ruby​​ 脚本来执行此操作

  • @a.hrdie 应该可以正常工作https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/serialization/StringSerializer.java#L46 (2认同)