使用kafka avro console producer和模式注册表中已有的模式

643ylb08  于 2021-06-06  发布在  Kafka
关注(0)|答案(2)|浏览(822)

我想使用 kafka-avro-console-producer 使用架构注册表。我有很大的模式(超过10k个字符),我不能把它们当作命令行参数。除此之外,我希望直接使用schema注册表,以便使用特定的schema id。
我在想这样的事,但没用:

kafka-avro-console-producer \
 --broker-list <broker-list> \
 --topic <topic>  \
 --property schema.registry.url=http://localhost:8081 \
 --property value.schema=`curl http://localhost:8081/schemas/ids/419`
nimxete2

nimxete21#

正在移动要回答的评论。。。
例如,您需要使用jq从api请求中提取模式

value.schema="$(curl http://localhost:8081/schemas/ids/419 | jq -r .schema)"
ccrfmcuu

ccrfmcuu2#

您可以使用该属性 value.schema.id :

kafka-avro-console-producer \
 --broker-list <broker-list> \
 --topic <topic>  \
 --property schema.registry.url=http://localhost:8081 \
 --property value.schema.id=419

相关问题