如何在kafka connect运行时中获取任务详细信息(id和连接器)

biswetbf  于 2021-06-04  发布在  Kafka
关注(0)|答案(2)|浏览(342)

我正在尝试创建自定义连接器,并希望在任务运行时中记录任务详细信息(连接器和任务id)。在task start和poll方法中,我想记录任务编号和连接器名称。是否有任何方法可以获得提供任务详细信息(连接器和任务id)的程序运行时上下文。
请注意,连接器可能有多个并行运行的任务(tasks.max configuration),因此我想将特定消息与创建它的特定任务相关联。

5ssjco0h

5ssjco0h1#

给定的 Connector 有一个 context 字段,但是我在api中没有看到如何获得有关正在运行的任务的元数据的详细信息

ruoxqz4g

ruoxqz4g2#

mapped diagnostic context(mdc)日志记录已添加到apache kafka 2.3中,您可以通过以下设置记录此信息:

log4j.appender.stdout.layout.ConversionPattern=[%d] %p %X{connector.context}%m (%c:%L)%n

这将为您提供如下日志:

INFO [sink-elastic-orders-00|task-0] Using multi thread/connection supporting pooling connection manager (io.searchbox.client.JestClientFactory:223)
INFO [sink-elastic-orders-00|task-0] Using default GSON instance (io.searchbox.client.JestClientFactory:69)

裁判:https://www.confluent.io/blog/kafka-connect-improvements-in-apache-kafka-2-3

相关问题