Please check preface of my another blog for initial insight on Micrometer Tracing and it’s succession of Spring Cloud Sleuth:
This blog will give you a full overview of the minimal configuration required to enable any Spring Boot app with Distributed Tracing capability using the following toolsets:
- Micrometer — For code instrumentation & provide tracing bridge to OpenZipkin Brave.
- Brave — Distributed tracing Instrumentation library supporting both W3C & B3 trace context and propagation formats.
- Zipkin — For visualizing, monitoring & troubleshooting distributed systems micro-service traces.
First, we will understand the dependencies required for spring boot auto configuration to take place.
NOTE: For Gradle/Maven dependencies, since we are using all spring BOM managed dependencies, so <version> tag is not used, unless you want to override to specific version. Check all the latest of versions managed by Spring BOM.
For Brave integration, we’ll look at Boot 3 BraveAutoconfiguration and ZipkinConfigurations.BraveConfiguration classes, which auto-configures Distributed Tracing of our app, based on available dependencies in the classpath.
micrometer-tracing-bridge-brave — provides micrometer bridge/facade to Brave tracing. It also transitively…