Как я могу получить детали задачи (ID и Connector) в Kafka Connect Runtime - PullRequest
1 голос
/ 02 апреля 2020

Я пытаюсь создать пользовательский соединитель и хочу записать сведения о задаче (Соединитель и идентификатор задачи) во время выполнения задачи. В методах запуска и опроса задач я хочу записать номер задачи и имя соединителя. Можно ли каким-то образом получить контекст времени выполнения программы, который предоставляет подробные сведения о задаче (Соединитель и ИД задачи).

Обратите внимание, что в соединителе может выполняться несколько задач параллельно (конфигурация tasks.max), поэтому я хочу связать указанные c сообщения с заданной c задачей, которая его создала.

Ответы [ 2 ]

1 голос
/ 02 апреля 2020

Mapped Diagnosti c Контекстное ведение журнала (MD C) было добавлено в 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)

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

1 голос
/ 02 апреля 2020

Данное Connector имеет поле context, однако я не вижу в API, как вы могли бы получить подробную информацию о метаданных выполняющейся задачи

...