Невозможно отправить json (используя почтальона) со схемой, встроенной в Kafka topi c: код ошибки 422 - PullRequest
1 голос
/ 13 января 2020

Я хотел бы отправить json в топик Кафки c с помощью Почтальона.

В почтальоне при отправке следующего json все работает (ошибка не возвращается kafka и при использовании топи c Я вижу правильные значения):

{
  "records": [
    {
        "key":"some_key",
      "value":"test"

    }
  ]
}

Однако при отправке следующих json со встроенными schema и payload:

{
  "schema": {
    "type": "struct",
    "fields": [
      {
        "type": "string",
        "optional": false,
        "field": "userid"
      },
      {
        "type": "string",
        "optional": false,
        "field": "regionid"
      },
      {
        "type": "string",
        "optional": false,
        "field": "gender"
      }
    ],
    "optional": false,
    "name": "ksql.users"
  },
  "payload": {
    "userid": "User_1",
    "regionid": "Region_5",
    "gender": "MALE"
  }
}

Я получаю следующий ответ:

{
    "error_code": 422,
    "message": "Unrecognized field: schema"
}

Следующие источники рекомендуют встраивать схему, как того требует приемник JDB C: https://github.com/confluentinc/kafka-connect-jdbc/issues/609 https://www.confluent.io/blog/kafka-connect-deep-dive-converters-serialization-explained/

В моем sink-postgresql.properties я установил:

value.converter=org.apache.kafka.connect.json.JsonConverter
value.converter.shemas.enable=true

key.converter.shemas.enable=true
key.converter=org.apache.kafka.connect.json.JsonConverter

Я не знаю, почему это не работает, некоторая помощь может быть полезной.

system : Ubuntu 18.04 почтальон на платформе Confluent 7.14

...