使用 Kafka Avro Console Consumer 时如何为特定 Schema 注册表传递参数?

How to pass parameters for a specific Schema registry when using Kafka Avro Console Consumer?

我正在尝试使用 Confluent kafka-avro-console-consumer,但如何将 Schema Registry 的参数传递给它?

猜猜你在找什么...

kafka-avro-console-consumer --topic topicX --bootstrap-server kafka:9092 \ 
    --property schema.registry.url="http://schema-registry:8081"

不,您不能指定架构版本。 ID 直接从主题中的 Avro 数据中使用。主题名称映射到主题名称。

使用--property print.key=true查看Kafka消息密钥。这是普通控制台消费者的一般 属性。

这些是 avro-console-consumer 脚本中唯一的额外选项,意味着除了 kafka-consumer-consumer 中已经定义的内容之外,您只能提供 --formatter--property schema.registry.url,以及没有其他 Schema Registry 特定参数(无论是什么)

for OPTION in "$@"
do
  case $OPTION in
    --formatter)
      DEFAULT_AVRO_FORMATTER=""
      ;;
    --*)
      ;;
    *)
      PROPERTY=$OPTION
      case $PROPERTY in
        schema.registry.url*)
          DEFAULT_SCHEMA_REGISTRY_URL=""
        ;;
      esac
      ;;
    esac
done