Я хотел бы использовать kafka-avro-console-producer
с реестром схем. У меня большие схемы (более 10 тысяч символов), и я не могу передать их в качестве аргумента командной строки. Кроме того, я хотел бы использовать реестр схем напрямую, чтобы использовать конкретный идентификатор схемы.
Я думаю о таком, но не получается:
kafka-avro-console-producer \
--broker-list <broker-list> \
--topic <topic> \
--property schema.registry.url=http://localhost:8081 \
--property value.schema=`curl http://localhost:8081/schemas/ids/419`
{"schema":"{\"type\":\"record\",\"name\":\"...
. Также у моей схемы есть документ, содержащий одинарные и двойные кавычки, а также *, который странно интерпретируется bash. - person 0x26res   schedule 06.01.2020jq
, тогда можно использоватьcurl http://localhost:8081/schemas/ids/419 | jq .schema
- person OneCricketeer   schedule 06.01.2020{\"type\":\"record\",\"name\":\"
. Мне пришлось бы разобрать его и снова сбросить как json - person 0x26res   schedule 06.01.2020curl http://localhost:8081/schemas/ids/419 | jq -r .schema
. У меня все еще проблема, потому что * добавлены к содержимому текущего каталога. - person 0x26res   schedule 06.01.2020*
? Можешь попробоватьvalue.schema="$(curl http://localhost:8081/schemas/ids/419 | jq -r .schema)"
? По сути, вам нужно как-то процитировать*
- person OneCricketeer   schedule 06.01.2020*
взяты из комментариев стиля java в схеме, например:/** */
- person 0x26res   schedule 07.01.2020