web-dev-qa-db-fra.com

Comment passer les paramètres d'un registre de schéma spécifique lors de l'utilisation de Kafka Avro Console Consumer?

J'essaie d'utiliser Confluent kafka-avro-console-consumer, mais comment lui passer les paramètres du registre de schéma?

11
Joe

Juste une supposition sur ce que vous cherchez ...

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

Non, vous ne pouvez pas spécifier de version de schéma. L'ID est consommé directement à partir des données Avro dans la rubrique. Le nom du sujet est mappé sur le nom du sujet.

Utilisation --property print.key=true pour voir la clé de message Kafka. Il s'agit d'une propriété générale du consommateur de console classique.

Ce sont les seules options supplémentaires dans le script avro-console-consumer, ce qui signifie autre que ce qui est déjà défini dans kafka-consumer-consumer, vous ne pouvez fournir que --formatter ou --property schema.registry.url, et aucun autre paramètre spécifique au registre de schéma (quels qu'ils soient)

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 
17
cricket_007