我想打印从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)
型
我错过了什么。有没有其他的旗帜,我应该使用?
1条答案
按热度按时间3duebb1j1#
我今天也试着做了同样的事情,结果发现:
字符串
此CLI命令存在于
confluentinc/cp-schema-registry
Docker镜像中。以下是一些相关信息: