Bug report
- Spring Boot ver: 3.2.0
- Reproducer: https://github.com/arana3/webflux-springboot-3.2-tracing-issue/
Description:
- RestController annotated HTTP input properly takes custom baggage (ex. "management.tracing.baggage.correlation.fields") and propagates remotely (ex. Kafka)
- Functional router HTTP input does not take custom baggage out of box and propagate remotely (e.g. Kafka)
Screenshot links
Rest Controller HTTP input --> Kafka msg record headers
Comment From: wilkinsona
Thanks for the report. Unfortunately, the screenshots are so small and heavily compressed that they're unreadable. Can you please either copy the text into this issue or attach the images directly.
Comment From: bclozel
I've tried your sample and unfortunately it doesn't run for me. For future reports, it would be useful to provide more detailed explanations on how to reproduce the problem: do we need to have a particular container running (in this case, can you provide a docker compose?). Is Kafka really needed?
Here, the missing trace is not really related to Kafka at all and I've stripped Kafka from your sample. Upgrading to Spring 3.2.1 fixes the problem so I assume this is a duplicate of https://github.com/spring-projects/spring-framework/issues/31706 and I'm closing this issue as a result.
Comment From: arana3
Thanks @bclozel.
I did not find that mentioned issue in my search (was using keyword observability). I see that recently released Spring Boot 3.2.1 and its dependencies resolves the issue.
Correlation fields marked for propagation from baggage are now propagating via Kafka and HTTP using the reactive web client.