Class LeakDetectingSpanProcessor

  • All Implemented Interfaces:
    io.opentelemetry.sdk.trace.SpanProcessor, Closeable, AutoCloseable

    public final class LeakDetectingSpanProcessor
    extends Object
    implements io.opentelemetry.sdk.trace.SpanProcessor
    A SpanProcessor 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 Detail

      • onStart

        public void onStart​(io.opentelemetry.context.Context parentContext,
                            io.opentelemetry.sdk.trace.ReadWriteSpan span)
        Specified by:
        onStart in interface io.opentelemetry.sdk.trace.SpanProcessor
      • isStartRequired

        public boolean isStartRequired()
        Specified by:
        isStartRequired in interface io.opentelemetry.sdk.trace.SpanProcessor
      • onEnd

        public void onEnd​(io.opentelemetry.sdk.trace.ReadableSpan span)
        Specified by:
        onEnd in interface io.opentelemetry.sdk.trace.SpanProcessor
      • isEndRequired

        public boolean isEndRequired()
        Specified by:
        isEndRequired in interface io.opentelemetry.sdk.trace.SpanProcessor