Я успешно установил Postgres Debezium CDC
. Теперь я могу отследить все изменения, происходящие с базой данных. Но проблема в том, что поле «до» всегда остается пустым. Итак, если я вставлю запись (id = 1, name = Bill)
, я получу от Кафки эти данные:
'payload': {'before': None, 'after': {'id': 1, 'name': 'Bill'}, ...
Но если я обновлю запись следующим образом:
UPDATE mytable set name = 'Bob' WHERE id = 1
Я получу это от Кафки :
'payload': {'before': None, 'after': {'id': 1, 'name': 'Bob'}, ...
Вот как я настроил свой разъем:
curl -X POST localhost:8083/connectors/ \
-H "Accept:application/json" -H "Content-Type:application/json" -d \
'{
"name": "test-connector",
"config": {
"connector.class": "io.debezium.connector.postgresql.PostgresConnector",
"tasks.max": "1",
"plugin.name": "pgoutput",
"database.hostname": "postgres",
"database.port": "5432",
"database.user": "postgres",
"database.password": "postgres",
"database.dbname" : "test",
"database.server.name": "postgres",
"database.whitelist": "public.mytable",
"database.history.kafka.bootstrap.servers": "kafka:9092",
"database.history.kafka.topic": "public.topic"
}
}'
Что с этим не так и как я могу это исправить?