【发布时间】:2021-12-06 10:55:43
【问题描述】:
我正在使用 JDBC 接收器连接器将数据从 kafka 主题加载到 postgres。 这是我的配置
curl --location --request PUT 'http://localhost:8083/connectors/customer_sink_1/config' \
--header 'Content-Type: application/json' \
--data-raw '{
"connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector",
"connection.url":"jdbc:postgresql://localhost:5432/postgres",
"connection.user":"user",
"connection.password":"passwd",
"tasks.max" : "1",
"topics":"table_name_same_as_topic_name",
"insert.mode":"insert",
"key.converter":"org.apache.kafka.connect.converters.ByteArrayConverter",
"value.converter":"org.apache.kafka.connect.json.JsonConverter",
"quote.sql.identifiers":"never",
"errors.tolerance":"all",
"errors.deadletterqueue.topic.name":"failed_records",
"errors.deadletterqueue.topic.replication.factor":"1",
"errors.log.enable":"true",
"errors.deadletterqueue.context.headers.enable":"true",
"reporter.bootstrap.servers":"localhost:9092",
"reporter.result.topic.name":"success-responses",
"reporter.result.topic.replication.factor":"1",
"reporter.error.topic.name":"error-responses",
"reporter.error.topic.replication.factor":"1"
}'
我在 windows 上从 apache kafka 下载了 kafka,并使用 .bat 文件来使用该服务。
我能够将失败的记录发送到其他主题,但是当我尝试从命令行使用 kafka-consumer 使用它时无法看到标题,但可以看到失败的数据/记录。
You can then use the **kcat** (formerly kafkacat) Utility to view the record header and determine why the record failed. Errors are also sent to **Connect Reporter**.
所以我尝试了 Connect Reporter,但没有创建成功响应和错误响应主题。
如果没有 kcat,我如何查看失败记录的标头????可以吗??
【问题讨论】:
-
当然,可以编写自己的消费者来读取标题
-
嗨@OneCricketeer,我的Connect Reporter有什么问题还是误解了???为什么不创建错误主题和成功主题???
-
您可能需要提前创建主题?不确定,没用过。但我认为记者不是在每个连接器的基础上配置的,只能从 Confluent 中配置,而不仅仅是 Apache Kafka 下载页面本身 - confluent.io/blog/…
标签: jdbc apache-kafka apache-kafka-connect