Class OpenTelemetryTracer
- java.lang.Object
-
- com.azure.core.tracing.opentelemetry.OpenTelemetryTracer
-
- All Implemented Interfaces:
Tracer
public class OpenTelemetryTracer extends Object implements Tracer
Basic tracing implementation class for use with REST and AMQP Service Clients to createSpan
and in-process context propagation. Singleton OpenTelemetry tracer capable of starting and exporting spans.This helper class supports W3C distributed tracing protocol and injects SpanContext into the outgoing HTTP and AMQP requests.
-
-
Field Summary
-
Fields inherited from interface com.azure.core.util.tracing.Tracer
AZ_TRACING_NAMESPACE_KEY, DIAGNOSTIC_ID_KEY, DISABLE_TRACING_KEY, ENTITY_PATH_KEY, HOST_NAME_KEY, MESSAGE_ENQUEUED_TIME, PARENT_SPAN_KEY, PARENT_TRACE_CONTEXT_KEY, SCOPE_KEY, SPAN_BUILDER_KEY, SPAN_CONTEXT_KEY, USER_SPAN_NAME_KEY
-
-
Constructor Summary
Constructors Constructor Description OpenTelemetryTracer()
Creates newOpenTelemetryTracer
using default global tracer -GlobalOpenTelemetry.getTracer(String)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEvent(String eventName, Map<String,Object> traceEventAttributes, OffsetDateTime timestamp)
void
addEvent(String eventName, Map<String,Object> traceEventAttributes, OffsetDateTime timestamp, Context context)
void
addLink(Context context)
void
end(int responseCode, Throwable throwable, Context context)
void
end(String statusMessage, Throwable throwable, Context context)
Context
extractContext(String diagnosticId, Context context)
Context
getSharedSpanBuilder(String spanName, Context context)
AutoCloseable
makeSpanCurrent(Context context)
void
setAttribute(String key, String value, Context context)
Context
setSpanName(String spanName, Context context)
Context
start(String spanName, Context context)
Context
start(String spanName, Context context, ProcessKind processKind)
Context
start(String spanName, StartSpanOptions options, Context context)
-
-
-
Constructor Detail
-
OpenTelemetryTracer
public OpenTelemetryTracer()
Creates newOpenTelemetryTracer
using default global tracer -GlobalOpenTelemetry.getTracer(String)
-
-
Method Detail
-
start
public Context start(String spanName, StartSpanOptions options, Context context)
-
start
public Context start(String spanName, Context context, ProcessKind processKind)
-
setAttribute
public void setAttribute(String key, String value, Context context)
- Specified by:
setAttribute
in interfaceTracer
-
setSpanName
public Context setSpanName(String spanName, Context context)
- Specified by:
setSpanName
in interfaceTracer
-
extractContext
public Context extractContext(String diagnosticId, Context context)
- Specified by:
extractContext
in interfaceTracer
-
getSharedSpanBuilder
public Context getSharedSpanBuilder(String spanName, Context context)
- Specified by:
getSharedSpanBuilder
in interfaceTracer
-
makeSpanCurrent
public AutoCloseable makeSpanCurrent(Context context)
- Specified by:
makeSpanCurrent
in interfaceTracer
-
addEvent
public void addEvent(String eventName, Map<String,Object> traceEventAttributes, OffsetDateTime timestamp)
-
-