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

Joe*_*Joe 13 avro apache-kafka confluent confluent-schema-registry

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

cri*_*007 21

只是猜测你在寻找什么......

kafka-avro-console-consumer --topic topicX --bootstrap-server kafka:9092 \ 
    --property schema.registry.url="http://schema-registry:8081"
Run Code Online (Sandbox Code Playgroud)

不,您无法指定架构版本.该ID直接来自主题中的Avro数据.主题名称映射到主题名称.

使用--property print.key=true看卡夫卡的消息密钥.这是常规控制台使用者的一般属性.

这些是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 
Run Code Online (Sandbox Code Playgroud)