Micrometer Tracing provides a bridge/facade to instrument your Spring Boot JVM-based application code with OpenTelemetry Tracing, which gets collected and exported to Jaeger for trace view. Jaeger also supports centralized remote sampling strategy configuration.
Distributed Tracing of Spring Boot Web App using Micrometer, OpenTelemetry And Jaeger (collector with Remote Sampler)

Member-only story

Spring Boot 3x App — Distributed Tracing with Micrometer, OpenTelemetry And Jaeger with Remote Sampler

Amith Kumar

--

Prequel: Spring Boot 3x App — Enable Distributed Tracing using Micrometer, OpenTelemetry And Jaeger

This blog is extension of the prequel blog where we are just adding Jaeger Remote Sampler configuration to the setup, which then gets picked up by Spring Boot OpenTelemetry auto-configuration.

Jaeger’s remote sampling configuration allows controlling the sampling strategies in all your services from a central configuration in Jaeger backend (via jaeger-collectors). This sampling strategy configuration is then served to the client SDK that describes endpoints and their sampling probabilities. To understand more details about how Remote Sampling Configurations can be setup, please refer the Jaeger docs.

NOTE: The classic Jaeger SDK is now deprecated in favor of wide adaption of Jaeger to OpenTelemetry SDKs. Now refer the source code for OpenTelemetry JaegerRemoteSampler here.

The only additional code configuration required to fetch Remote Sampling Strategy in your app:

  • Dependencies (pom.xml)
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-tracing-bridge-otel</artifactId>
</dependency>…

--

--

No responses yet