keycloak/keycloak

Add support for selecting OpenTracing propagators

Aperta

#33.624 aperta il 7 ott 2024

 (6 commenti) (1 reazione) (0 assegnatari)Java (8346 fork)batch import
area/observabilityhelp wantedkind/enhancementstatus/triageteam/cloud-native

Metriche repository

Star
 (34.398 stelle)
Metriche merge PR
 (Merge medio 6g 19h) (384 PR mergiate in 30 g)

Descrizione

Description

With the new OpenTracing support via https://github.com/keycloak/keycloak/pull/28597/, support for selecting a propagator is missing.

Discussion

No response

Motivation

we currently use b3 propagation in our environment; for keycloak traces to be stitched to our load balancer, we need support for b3.

Details

The library keycloak uses has an optional component to turn this on: https://quarkus.io/guides/opentelemetry-tracing#propagators

The b3, b3multi, jaeger and ottrace propagators will need the trace-propagators extension to be added as a dependency to your project.

Will also need to expose the configuration variable (https://quarkus.io/guides/opentelemetry#quarkus-opentelemetry_quarkus-otel-propagators):

quarkus.otel.propagators

The propagators to be used. Use a comma-separated list for multiple propagators.

Has values from PropagatorType or the full qualified name of a class implementing io.opentelemetry.context.propagation.TextMapPropagator.

Default is PropagatorType.Constants#TRACE_CONTEXT,PropagatorType.Constants#BAGGAGE (W3C).

Environment variable: QUARKUS_OTEL_PROPAGATORS

Guida contributor