Class OtelTracer

java.lang.Object
io.micrometer.tracing.otel.bridge.OtelTracer
All Implemented Interfaces:
io.micrometer.tracing.BaggageManager, io.micrometer.tracing.Tracer

public class OtelTracer extends Object implements io.micrometer.tracing.Tracer
OpenTelemetry implementation of a Tracer.
Since:
1.0.0
  • Constructor Details

    • OtelTracer

      public OtelTracer(io.opentelemetry.api.trace.Tracer tracer, OtelCurrentTraceContext otelCurrentTraceContext, OtelTracer.EventPublisher publisher, io.micrometer.tracing.BaggageManager otelBaggageManager)
      Creates a new instance of OtelTracer.
      Parameters:
      tracer - tracer
      otelCurrentTraceContext - current trace context
      publisher - event publisher
      otelBaggageManager - baggage manager
    • OtelTracer

      public OtelTracer(io.opentelemetry.api.trace.Tracer tracer, OtelCurrentTraceContext otelCurrentTraceContext, OtelTracer.EventPublisher publisher)
      Creates a new instance of OtelTracer with no baggage support.
      Parameters:
      tracer - tracer
      otelCurrentTraceContext - current trace context
      publisher - event publisher
  • Method Details

    • nextSpan

      public io.micrometer.tracing.Span nextSpan(io.micrometer.tracing.Span parent)
      Specified by:
      nextSpan in interface io.micrometer.tracing.Tracer
    • withSpan

      public io.micrometer.tracing.Tracer.SpanInScope withSpan(io.micrometer.tracing.Span span)
      Specified by:
      withSpan in interface io.micrometer.tracing.Tracer
    • currentSpanCustomizer

      public io.micrometer.tracing.SpanCustomizer currentSpanCustomizer()
      Specified by:
      currentSpanCustomizer in interface io.micrometer.tracing.Tracer
    • currentSpan

      public io.micrometer.tracing.Span currentSpan()
      Specified by:
      currentSpan in interface io.micrometer.tracing.Tracer
    • nextSpan

      public io.micrometer.tracing.Span nextSpan()
      Specified by:
      nextSpan in interface io.micrometer.tracing.Tracer
    • startScopedSpan

      public io.micrometer.tracing.ScopedSpan startScopedSpan(String name)
      Specified by:
      startScopedSpan in interface io.micrometer.tracing.Tracer
    • spanBuilder

      public io.micrometer.tracing.Span.Builder spanBuilder()
      Specified by:
      spanBuilder in interface io.micrometer.tracing.Tracer
    • traceContextBuilder

      public io.micrometer.tracing.TraceContext.Builder traceContextBuilder()
      Specified by:
      traceContextBuilder in interface io.micrometer.tracing.Tracer
    • currentTraceContext

      public io.micrometer.tracing.CurrentTraceContext currentTraceContext()
      Specified by:
      currentTraceContext in interface io.micrometer.tracing.Tracer
    • getAllBaggage

      public Map<String,String> getAllBaggage()
      Specified by:
      getAllBaggage in interface io.micrometer.tracing.BaggageManager
    • getAllBaggage

      public Map<String,String> getAllBaggage(io.micrometer.tracing.TraceContext traceContext)
      Specified by:
      getAllBaggage in interface io.micrometer.tracing.BaggageManager
    • getBaggage

      public io.micrometer.tracing.Baggage getBaggage(String name)
      Specified by:
      getBaggage in interface io.micrometer.tracing.BaggageManager
    • getBaggage

      public io.micrometer.tracing.Baggage getBaggage(io.micrometer.tracing.TraceContext traceContext, String name)
      Specified by:
      getBaggage in interface io.micrometer.tracing.BaggageManager
    • createBaggage

      @Deprecated public io.micrometer.tracing.Baggage createBaggage(String name)
      Deprecated.
      Specified by:
      createBaggage in interface io.micrometer.tracing.BaggageManager
    • createBaggage

      @Deprecated public io.micrometer.tracing.Baggage createBaggage(String name, String value)
      Deprecated.
      Specified by:
      createBaggage in interface io.micrometer.tracing.BaggageManager
    • createBaggageInScope

      public io.micrometer.tracing.BaggageInScope createBaggageInScope(String name, String value)
      Specified by:
      createBaggageInScope in interface io.micrometer.tracing.BaggageManager
    • createBaggageInScope

      public io.micrometer.tracing.BaggageInScope createBaggageInScope(io.micrometer.tracing.TraceContext traceContext, String name, String value)
      Specified by:
      createBaggageInScope in interface io.micrometer.tracing.BaggageManager