Class LeakDetectingSpanProcessor
- java.lang.Object
-
- io.opentelemetry.sdk.extension.incubator.trace.LeakDetectingSpanProcessor
-
- All Implemented Interfaces:
io.opentelemetry.sdk.trace.SpanProcessor
,Closeable
,AutoCloseable
public final class LeakDetectingSpanProcessor extends Object implements io.opentelemetry.sdk.trace.SpanProcessor
ASpanProcessor
which will detect spans that are never ended. It will detect spans that are garbage collected without ever having `end()` called on them.Note: using this SpanProcessor will definitely impact the performance of your application. It is not recommended for production use, as it uses additional memory for each span to track where a leaked span was created.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static LeakDetectingSpanProcessor
create()
Create a newLeakDetectingSpanProcessor
that will report any un-ended spans that get garbage collected.boolean
isEndRequired()
boolean
isStartRequired()
void
onEnd(io.opentelemetry.sdk.trace.ReadableSpan span)
void
onStart(io.opentelemetry.context.Context parentContext, io.opentelemetry.sdk.trace.ReadWriteSpan span)
-
-
-
Method Detail
-
create
public static LeakDetectingSpanProcessor create()
Create a newLeakDetectingSpanProcessor
that will report any un-ended spans that get garbage collected.
-
onStart
public void onStart(io.opentelemetry.context.Context parentContext, io.opentelemetry.sdk.trace.ReadWriteSpan span)
- Specified by:
onStart
in interfaceio.opentelemetry.sdk.trace.SpanProcessor
-
isStartRequired
public boolean isStartRequired()
- Specified by:
isStartRequired
in interfaceio.opentelemetry.sdk.trace.SpanProcessor
-
onEnd
public void onEnd(io.opentelemetry.sdk.trace.ReadableSpan span)
- Specified by:
onEnd
in interfaceio.opentelemetry.sdk.trace.SpanProcessor
-
isEndRequired
public boolean isEndRequired()
- Specified by:
isEndRequired
in interfaceio.opentelemetry.sdk.trace.SpanProcessor
-
-