java.lang.Object
io.quarkus.opentelemetry.runtime.tracing.intrumentation.restclient.OpenTelemetryClientFilter
All Implemented Interfaces:
jakarta.ws.rs.client.ClientRequestFilter, jakarta.ws.rs.client.ClientResponseFilter

@Provider public class OpenTelemetryClientFilter extends Object implements jakarta.ws.rs.client.ClientRequestFilter, jakarta.ws.rs.client.ClientResponseFilter
A client filter for the JAX-RS Client and MicroProfile REST Client that records OpenTelemetry data. This is only used by RESTEasy Classic, because the handling implementation is provided by RESTEasy. This is not used by RESTEasy Reactive because tracing is handled by Vert.x.
  • Field Details

    • REST_CLIENT_OTEL_SPAN_CLIENT_CONTEXT

      public static final String REST_CLIENT_OTEL_SPAN_CLIENT_CONTEXT
      See Also:
    • REST_CLIENT_OTEL_SPAN_CLIENT_PARENT_CONTEXT

      public static final String REST_CLIENT_OTEL_SPAN_CLIENT_PARENT_CONTEXT
      See Also:
    • REST_CLIENT_OTEL_SPAN_CLIENT_SCOPE

      public static final String REST_CLIENT_OTEL_SPAN_CLIENT_SCOPE
      See Also:
  • Constructor Details

    • OpenTelemetryClientFilter

      public OpenTelemetryClientFilter()
    • OpenTelemetryClientFilter

      @Inject public OpenTelemetryClientFilter(io.opentelemetry.api.OpenTelemetry openTelemetry, OTelRuntimeConfig runtimeConfig)
  • Method Details

    • filter

      public void filter(jakarta.ws.rs.client.ClientRequestContext request)
      Specified by:
      filter in interface jakarta.ws.rs.client.ClientRequestFilter
    • filter

      public void filter(jakarta.ws.rs.client.ClientRequestContext request, jakarta.ws.rs.client.ClientResponseContext response)
      Specified by:
      filter in interface jakarta.ws.rs.client.ClientResponseFilter
    • isReactiveClient

      static boolean isReactiveClient(jakarta.ws.rs.client.ClientRequestContext request)