Я использовал Ruby gem avro_turf
, чтобы преобразовать данные в двоичные файлы и опубликовать их в Kafka. Но я получил ошибку unknown keyword: version
при попытке кодировать данные.
Я запустил реестр схем Confluent на localhost:8081
. Я могу создавать и читать тему на терминале.
Я сканирую его исходный код , в функции кодирования есть параметр "version".
Я вью curl -X GET http://127.0.0.1:8081/subjects/avro-test/versions/1
в Реестр схемы и получаю эти данные
{"subject":"avro-test","version":1,"id":1,"schema":"{\"type\":\"record\",\"name\":\"evolution\",\"namespace\":\"com.landoop\",\"doc\":\"This is a sample Avro schema to get you started. Please edit\",\"fields\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"phone\",\"type\":\"string\"},{\"name\":\"email\",\"type\":\"string\"}]}"}
Это мой текущий код
require "avro_turf/messaging"
avro = AvroTurf::Messaging.new(registry_url: "http://localhost:8081/")
data = avro.encode('{ "name" => "hello, world", "phone": "01232323", "email": "hello@gmail.com" }', subject: 'avro-test', version: 1)
Пожалуйста, помогите мне для решения.