Interface SdkTracerManagement
-
- All Known Implementing Classes:
SdkTracerProvider
public interface SdkTracerManagement
"Management" interface for the Tracing SDK. This interface exposes methods for configuring the Tracing SDK, as well as several lifecycle methods.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addSpanProcessor(SpanProcessor spanProcessor)
Adds a newSpanProcessor
to thisTracer
.io.opentelemetry.sdk.common.CompletableResultCode
forceFlush()
Requests the active span processor to process all span events that have not yet been processed and returns aCompletableResultCode
which is completed when the flush is finished.TraceConfig
getActiveTraceConfig()
Returns the activeTraceConfig
.void
shutdown()
Attempts to stop all the activity for thisTracer
.void
updateActiveTraceConfig(TraceConfig traceConfig)
Updates the activeTraceConfig
.
-
-
-
Method Detail
-
getActiveTraceConfig
TraceConfig getActiveTraceConfig()
Returns the activeTraceConfig
.- Returns:
- the active
TraceConfig
.
-
updateActiveTraceConfig
void updateActiveTraceConfig(TraceConfig traceConfig)
Updates the activeTraceConfig
.Note: To update the
TraceConfig
associated with this instance you should use theTraceConfig.toBuilder()
method on theTraceConfig
returned fromgetActiveTraceConfig()
, make the changes desired to theTraceConfigBuilder
instance, then use this method with the resultingTraceConfig
instance.- Parameters:
traceConfig
- the new activeTraceConfig
.- See Also:
TraceConfig
-
addSpanProcessor
void addSpanProcessor(SpanProcessor spanProcessor)
Adds a newSpanProcessor
to thisTracer
.Any registered processor cause overhead, consider to use an async/batch processor especially for span exporting, and export to multiple backends using the
SpanExporter.composite(SpanExporter...)
.- Parameters:
spanProcessor
- the newSpanProcessor
to be added.
-
shutdown
void shutdown()
Attempts to stop all the activity for thisTracer
. CallsSpanProcessor.shutdown()
for all registeredSpanProcessor
s.This operation may block until all the Spans are processed. Must be called before turning off the main application to ensure all data are processed and exported.
After this is called, newly created
Span
s will be no-ops.After this is called, further attempts at re-using or reconfiguring this instance will result in undefined behavior. It should be considered a terminal operation for the SDK implementation.
-
forceFlush
io.opentelemetry.sdk.common.CompletableResultCode forceFlush()
Requests the active span processor to process all span events that have not yet been processed and returns aCompletableResultCode
which is completed when the flush is finished.- See Also:
SpanProcessor.forceFlush()
-
-