Class HttpClientTracer<REQUEST,​CARRIER,​RESPONSE>


  • public abstract class HttpClientTracer<REQUEST,​CARRIER,​RESPONSE>
    extends BaseTracer
    • Constructor Detail

      • HttpClientTracer

        protected HttpClientTracer​(NetPeerAttributes netPeerAttributes)
      • HttpClientTracer

        protected HttpClientTracer​(io.opentelemetry.api.OpenTelemetry openTelemetry,
                                   NetPeerAttributes netPeerAttributes)
    • Method Detail

      • flavor

        protected @Nullable String flavor​(REQUEST request)
      • status

        protected abstract @Nullable Integer status​(RESPONSE response)
      • requestHeader

        protected abstract @Nullable String requestHeader​(REQUEST request,
                                                          String name)
      • responseHeader

        protected abstract @Nullable String responseHeader​(RESPONSE response,
                                                           String name)
      • getSetter

        protected abstract io.opentelemetry.context.propagation.TextMapSetter<CARRIER> getSetter()
      • shouldStartSpan

        public boolean shouldStartSpan​(io.opentelemetry.context.Context parentContext)
      • startSpan

        public io.opentelemetry.context.Context startSpan​(io.opentelemetry.context.Context parentContext,
                                                          REQUEST request,
                                                          CARRIER carrier)
      • startSpan

        public io.opentelemetry.context.Context startSpan​(io.opentelemetry.api.trace.SpanKind kind,
                                                          io.opentelemetry.context.Context parentContext,
                                                          REQUEST request,
                                                          CARRIER carrier,
                                                          long startTimeNanos)
      • startSpan

        public io.opentelemetry.context.Context startSpan​(io.opentelemetry.context.Context parentContext,
                                                          REQUEST request,
                                                          CARRIER carrier,
                                                          long startTimeNanos)
      • inject

        protected void inject​(io.opentelemetry.context.Context context,
                              CARRIER carrier)
      • end

        public void end​(io.opentelemetry.context.Context context,
                        RESPONSE response)
      • end

        public void end​(io.opentelemetry.context.Context context,
                        RESPONSE response,
                        long endTimeNanos)
      • endExceptionally

        public void endExceptionally​(io.opentelemetry.context.Context context,
                                     RESPONSE response,
                                     Throwable throwable)
      • endExceptionally

        public void endExceptionally​(io.opentelemetry.context.Context context,
                                     RESPONSE response,
                                     Throwable throwable,
                                     long endTimeNanos)
      • endMaybeExceptionally

        public void endMaybeExceptionally​(io.opentelemetry.context.Context context,
                                          RESPONSE response,
                                          @Nullable Throwable throwable)
      • onRequest

        protected void onRequest​(io.opentelemetry.api.trace.SpanBuilder spanBuilder,
                                 REQUEST request)
      • onResponse

        protected void onResponse​(io.opentelemetry.api.trace.Span span,
                                  RESPONSE response)
      • spanNameForRequest

        protected String spanNameForRequest​(REQUEST request)