Class 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 Detail

      • REST_CLIENT_OTEL_SPAN_CLIENT_CONTEXT

        public static final String REST_CLIENT_OTEL_SPAN_CLIENT_CONTEXT
        See Also:
        Constant Field Values
      • REST_CLIENT_OTEL_SPAN_CLIENT_PARENT_CONTEXT

        public static final String REST_CLIENT_OTEL_SPAN_CLIENT_PARENT_CONTEXT
        See Also:
        Constant Field Values
    • Constructor Detail

      • OpenTelemetryClientFilter

        public OpenTelemetryClientFilter()
      • OpenTelemetryClientFilter

        @Inject
        public OpenTelemetryClientFilter​(io.opentelemetry.api.OpenTelemetry openTelemetry)
    • Method Detail

      • 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)