如何从kafka-console-consumer打印schema id?

wwodge7n  于 12个月前  发布在  Apache
关注(0)|答案(1)|浏览(202)

我想打印从kafka-console-consumer收到的avro消息的模式ID。
我在confluent platform(docker-based)内部尝试了以下命令:

kafka-console-consumer --bootstrap-server localhost:9092 --topic topic_name \
--property print.schema.ids=true --property \
 schema.registry.url="http://schema-registry:8081" \
--value-deserializer io.confluent.kafka.serializers.KafkaAvroDeserializer

字符串
但我得到了以下例外:

Exception in thread "main" org.apache.kafka.common.config.ConfigException: Missing required configuration "schema.registry.url" which has no default value.
        at org.apache.kafka.common.config.ConfigDef.parseValue(ConfigDef.java:515)
        at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:505)
        at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:112)
        at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:132)
        at io.confluent.kafka.serializers.AbstractKafkaSchemaSerDeConfig.<init>(AbstractKafkaSchemaSerDeConfig.java:295)
        at io.confluent.kafka.serializers.KafkaAvroDeserializerConfig.<init>(KafkaAvroDeserializerConfig.java:58)
        at io.confluent.kafka.serializers.KafkaAvroDeserializer.configure(KafkaAvroDeserializer.java:48)
        at kafka.tools.DefaultMessageFormatter.getDeserializerProperty(ConsoleConsumer.scala:609)
        at kafka.tools.DefaultMessageFormatter.$anonfun$configure$22(ConsoleConsumer.scala:515)
        at kafka.tools.DefaultMessageFormatter.configure(ConsoleConsumer.scala:615)
        at kafka.tools.ConsoleConsumer$ConsumerConfig.<init>(ConsoleConsumer.scala:325)
        at kafka.tools.ConsoleConsumer$.main(ConsoleConsumer.scala:51)
        at kafka.tools.ConsoleConsumer.main(ConsoleConsumer.scala)


我错过了什么。有没有其他的旗帜,我应该使用?

3duebb1j

3duebb1j1#

我今天也试着做了同样的事情,结果发现:

kafka-avro-console-consumer \
  --topic topic_name  \
  --property schema.registry.url=http://localhost:8081 \
  --bootstrap-server kafka-broker:9092 \
  --property print.key=true \
  --property print.schema.ids=true \
  --property key.separator="-" \
  --partition 0 \
  --offset 2423843 \
  --max-messages 3

字符串
此CLI命令存在于confluentinc/cp-schema-registry Docker镜像中。
以下是一些相关信息:

相关问题