https://docs.confluent.io/kafka-connectors/self-managed/userguide.html#configprovider-interface
public class TracingConfigProvider implements ConfigProvider {
@Override
public void configure(Map<String, ?> map) {
final JaegerTracer tracer = Configuration.fromEnv().getTracer();
GlobalTracer.registerIfAbsent(tracer);
}
@Override
public ConfigData get(String s) {
return null;
}
@Override
public ConfigData get(String s, Set<String> set) {
return null;
}
@Override
public void close(){}
}
And setting these Environment Variables in Kafka Connect
- CONNECT_CONFIG_PROVIDERS=tracing
- CONNECT_CONFIG_PROVIDERS_TRACING_CLASS=org.example.TracingConfigProvider
Another solution could be to use a Java agent to register the tracer:
https://github.com/strimzi/strimzi-kafka-operator/tree/main/tracing-agent/