valdar commented on pull request #4044: URL: https://github.com/apache/camel/pull/4044#issuecomment-664044002
@jam01 I will try to answer: `camel-kafka` is the camel component that connects to a Kafka broker. `camel-kafka-connector` is a camel subproject that makes easy to use camel components as Kafka Connect connectors. The connector is not looking for "uber-tracer-id" it is using the tracer mechanism trough the `.extract()` method. This has a specific implementation for each tracer, the Jaeger tracer looks for that header, others might look for different ones. I understand that I can actually do the steps you mentioned BEFORE using the producer template, I was trying to reason about what we get and loose by doing them regardless. I see 3 possible scenarios: 1. the exchange coming to an internal endpoint has already an active span/context registered in the exchange property (i.e. it is coming from an internal camel routing call and somewhere else during the camel routing a tracing span/context has been activated) 2. the exchange coming in has no span activated but the `tracer.extract()` return a context to use (i.e. someone has used a producer template setting the right headers for this to happen) 3. the exchange coming has no span activated and `tracer.extract()` does not return a tracing context (i.e. someone has used a producer template without passing a tracing context) 1 is what you handle right now, if we are not in this case then we can fall back to 2 and then 3. In the case of 3, we can either start a new trace or ignore for tracing (I would vote for starting a new trace). I might miss something but I don't see what we lose or have not considered in acting this way. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org