Получение нежелательных/управляющих символов в теме Кафки из исходного соединителя confluent MongoDB

#apache-kafka #confluent-platform

Вопрос:

Я пытаюсь получить данные в теме кафки из соединителя источника confluent MongoDB. Ниже приведена конфигурация соединителя:

 **{  "value.converter.schema.registry.url": lt;-SR url-gt;,  "key.converter.schema.registry.url": lt;-SR url-gt;,  "name": lt;-connector-name-gt;,  "connector.class": "com.mongodb.kafka.connect.MongoSourceConnector",  "tasks.max": "2",  "key.converter": "io.confluent.connect.avro.AvroConverter",  "value.converter": "io.confluent.connect.avro.AvroConverter",  "connection.uri": lt;-mongo-source-url-gt;,  "database": lt;-source-db-gt;,  "collection": lt;-source-tablename-gt;,  "publish.full.document.only": "true",  "output.format.key": "json",  "output.format.value": "json",  "output.json.formatter": "com.mongodb.kafka.connect.source.json.formatter.SimplifiedJson",  "copy.existing": "false" }**  

Я получаю данные в теме кафки, но ключ и значение, как показано ниже:

 **"key":"u0000u0000u0000u0005Đu0002{"_id": {"_data": "ABCD123"}}", "value":"u0000u0000u0000u0005��t{"_id": "ABCD123", "name": abc, "id": 174}"**  

Может кто-нибудь сталкивался с подобной проблемой? Моя схема темы в формате avro, поэтому мне нужно использовать только AvroConverter. Также я должен использовать «output.format» для ключа и значения как «json» только в качестве исходной схемы, которая не является постоянной.

Был бы очень признателен за любую помощь здесь.

Комментарии:

1. Это данные Avro. Если вам нужен читаемый вывод json, используйте конвертер json

2. Хорошо. Так значит ли это, что мы не можем использовать AvroConverter с форматированием json?

3. Я не знаком с этим разъемом Mongo. Его можно будет использовать с Avro (хотя, возможно, вместо этого вы захотите попробовать Debezium). Я просто говорю, что вывод представляет собой строковое представление полезной нагрузки байта Avro… Какой инструмент вы используете для просмотра данных?