Class InMemorySpanExporter
java.lang.Object
org.infinispan.server.core.telemetry.inmemory.InMemorySpanExporter
- All Implemented Interfaces:
io.opentelemetry.sdk.trace.export.SpanExporter
,Closeable
,AutoCloseable
public final class InMemorySpanExporter
extends Object
implements io.opentelemetry.sdk.trace.export.SpanExporter
Copied and adapted from project https://github.com/open-telemetry/opentelemetry-java
Module: testing
Class: io.opentelemetry.sdk.testing.exporter.InMemorySpanExporter.java
Version: 1.29.0
A SpanExporter
implementation that can be used to test OpenTelemetry integration.
Example usage:
// class MyClassTest {
// private final InMemorySpanExporter testExporter = InMemorySpanExporter.create();
// private final SdkTracerProvider tracerProvider = SdkTracerProvider
// .builder()
// .addSpanProcessor(SimpleSpanProcessor.create(testExporter))
// .build();
//
// @Test
// public void getFinishedSpanData() {
// Tracer tracer = tracerProvider.tracerBuilder("test-scope").build();
// tracer.spanBuilder("span").startSpan().end();
//
// List<SpanData> spanItems = testExporter.getFinishedSpanItems();
// assertThat(spanItems).isNotNull();
// assertThat(spanItems.size()).isEqualTo(1);
// assertThat(spanItems.get(0).getName()).isEqualTo("span");
// }
// }
-
Method Summary
Modifier and TypeMethodDescriptionstatic InMemorySpanExporter
create()
Returns a new instance of theInMemorySpanExporter
.io.opentelemetry.sdk.common.CompletableResultCode
export
(Collection<io.opentelemetry.sdk.trace.data.SpanData> spans) io.opentelemetry.sdk.common.CompletableResultCode
flush()
The InMemory exporter does not batch spans, so this method will immediately return with success.List
<io.opentelemetry.sdk.trace.data.SpanData> Returns aList
of the finishedSpan
s, represented bySpanData
.void
reset()
Clears the internalList
of finishedSpan
s.io.opentelemetry.sdk.common.CompletableResultCode
shutdown()
Clears the internalList
of finishedSpanData
s.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.opentelemetry.sdk.trace.export.SpanExporter
close
-
Method Details
-
create
Returns a new instance of theInMemorySpanExporter
.- Returns:
- a new instance of the
InMemorySpanExporter
.
-
getFinishedSpanItems
Returns aList
of the finishedSpan
s, represented bySpanData
.- Returns:
- a
List
of the finishedSpan
s.
-
reset
public void reset()Clears the internalList
of finishedSpan
s.Does not reset the state of this exporter if already shutdown.
-
export
public io.opentelemetry.sdk.common.CompletableResultCode export(Collection<io.opentelemetry.sdk.trace.data.SpanData> spans) - Specified by:
export
in interfaceio.opentelemetry.sdk.trace.export.SpanExporter
-
flush
public io.opentelemetry.sdk.common.CompletableResultCode flush()The InMemory exporter does not batch spans, so this method will immediately return with success.- Specified by:
flush
in interfaceio.opentelemetry.sdk.trace.export.SpanExporter
- Returns:
- always Success
-
shutdown
public io.opentelemetry.sdk.common.CompletableResultCode shutdown()Clears the internalList
of finishedSpanData
s.Any subsequent call to export() function on this SpanExporter, will return
CompletableResultCode.ofFailure()
- Specified by:
shutdown
in interfaceio.opentelemetry.sdk.trace.export.SpanExporter
-