Package io.opentelemetry.sdk.trace.data
Class DelegatingSpanData
- java.lang.Object
-
- io.opentelemetry.sdk.trace.data.DelegatingSpanData
-
- All Implemented Interfaces:
SpanData
public abstract class DelegatingSpanData extends java.lang.Object implements SpanData
ASpanData
which delegates all methods to anotherSpanData
. Extend this class to modify theSpanData
that will be exported, for example by creating a delegatingSpanExporter
which wrapsSpanData
with a custom implementation.// class SpanDataWithClientType extends DelegatingSpanData { // // private final Attributes attributes; // // SpanDataWithClientType(SpanData delegate) { // super(delegate); // String clientType = ClientConfig.parseUserAgent( // delegate.getAttributes().get(SemanticAttributes.USER_AGENT_ORIGINAL).getStringValue()); // Attributes.Builder newAttributes = Attributes.builder(delegate.getAttributes()); // newAttributes.setAttribute("client_type", clientType); // attributes = newAttributes.build(); // } // // @Override // public Attributes getAttributes() { // return attributes; // } // }
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DelegatingSpanData(SpanData delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
equals(java.lang.Object o)
Attributes
getAttributes()
Returns the attributes recorded for thisSpan
.long
getEndEpochNanos()
Returns the end epoch timestamp in nanos of thisSpan
.java.util.List<EventData>
getEvents()
Returns the timed events recorded for thisSpan
.InstrumentationLibraryInfo
getInstrumentationLibraryInfo()
Deprecated.InstrumentationScopeInfo
getInstrumentationScopeInfo()
Returns the instrumentation scope specified when creating the tracer which produced thisSpan
.SpanKind
getKind()
Returns the kind of thisSpan
.java.util.List<LinkData>
getLinks()
Returns links recorded for thisSpan
.java.lang.String
getName()
Returns the name of thisSpan
.SpanContext
getParentSpanContext()
Returns the parentSpanContext
.Resource
getResource()
Returns the resource of thisSpan
.SpanContext
getSpanContext()
Returns theSpanContext
of the Span.long
getStartEpochNanos()
Returns the start epoch timestamp in nanos of thisSpan
.StatusData
getStatus()
Returns theStatus
.int
getTotalAttributeCount()
The total number of attributes that were recorded on this span.int
getTotalRecordedEvents()
The total number ofEventData
events that were recorded on this span.int
getTotalRecordedLinks()
The total number ofLinkData
links that were recorded on this span.boolean
hasEnded()
Returns whether this Span has already been ended.int
hashCode()
java.lang.String
toString()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.opentelemetry.sdk.trace.data.SpanData
getParentSpanId, getSpanId, getTraceId
-
-
-
-
Field Detail
-
delegate
private final SpanData delegate
-
-
Constructor Detail
-
DelegatingSpanData
protected DelegatingSpanData(SpanData delegate)
-
-
Method Detail
-
getSpanContext
public SpanContext getSpanContext()
Description copied from interface:SpanData
Returns theSpanContext
of the Span.- Specified by:
getSpanContext
in interfaceSpanData
-
getParentSpanContext
public SpanContext getParentSpanContext()
Description copied from interface:SpanData
Returns the parentSpanContext
. If the span is a root span, theSpanContext
returned will be invalid.- Specified by:
getParentSpanContext
in interfaceSpanData
-
getResource
public Resource getResource()
Description copied from interface:SpanData
Returns the resource of thisSpan
.- Specified by:
getResource
in interfaceSpanData
- Returns:
- the resource of this
Span
.
-
getInstrumentationLibraryInfo
@Deprecated public InstrumentationLibraryInfo getInstrumentationLibraryInfo()
Deprecated.Description copied from interface:SpanData
Returns the instrumentation library specified when creating the tracer which produced thisSpan
.- Specified by:
getInstrumentationLibraryInfo
in interfaceSpanData
- Returns:
- an instance of
InstrumentationLibraryInfo
-
getInstrumentationScopeInfo
public InstrumentationScopeInfo getInstrumentationScopeInfo()
Description copied from interface:SpanData
Returns the instrumentation scope specified when creating the tracer which produced thisSpan
.- Specified by:
getInstrumentationScopeInfo
in interfaceSpanData
- Returns:
- an instance of
InstrumentationScopeInfo
-
getName
public java.lang.String getName()
Description copied from interface:SpanData
Returns the name of thisSpan
.
-
getKind
public SpanKind getKind()
Description copied from interface:SpanData
Returns the kind of thisSpan
.
-
getStartEpochNanos
public long getStartEpochNanos()
Description copied from interface:SpanData
Returns the start epoch timestamp in nanos of thisSpan
.- Specified by:
getStartEpochNanos
in interfaceSpanData
- Returns:
- the start epoch timestamp in nanos of this
Span
.
-
getAttributes
public Attributes getAttributes()
Description copied from interface:SpanData
Returns the attributes recorded for thisSpan
.- Specified by:
getAttributes
in interfaceSpanData
- Returns:
- the attributes recorded for this
Span
.
-
getEvents
public java.util.List<EventData> getEvents()
Description copied from interface:SpanData
Returns the timed events recorded for thisSpan
.
-
getLinks
public java.util.List<LinkData> getLinks()
Description copied from interface:SpanData
Returns links recorded for thisSpan
.
-
getStatus
public StatusData getStatus()
Description copied from interface:SpanData
Returns theStatus
.
-
getEndEpochNanos
public long getEndEpochNanos()
Description copied from interface:SpanData
Returns the end epoch timestamp in nanos of thisSpan
.- Specified by:
getEndEpochNanos
in interfaceSpanData
- Returns:
- the end epoch timestamp in nanos of this
Span
.
-
hasEnded
public boolean hasEnded()
Description copied from interface:SpanData
Returns whether this Span has already been ended.
-
getTotalRecordedEvents
public int getTotalRecordedEvents()
Description copied from interface:SpanData
The total number ofEventData
events that were recorded on this span. This number may be larger than the number of events that are attached to this span, if the total number recorded was greater than the configured maximum value. See:SpanLimits.getMaxNumberOfEvents()
- Specified by:
getTotalRecordedEvents
in interfaceSpanData
- Returns:
- The total number of events recorded on this span.
-
getTotalRecordedLinks
public int getTotalRecordedLinks()
Description copied from interface:SpanData
The total number ofLinkData
links that were recorded on this span. This number may be larger than the number of links that are attached to this span, if the total number recorded was greater than the configured maximum value. See:SpanLimits.getMaxNumberOfLinks()
- Specified by:
getTotalRecordedLinks
in interfaceSpanData
- Returns:
- The total number of links recorded on this span.
-
getTotalAttributeCount
public int getTotalAttributeCount()
Description copied from interface:SpanData
The total number of attributes that were recorded on this span. This number may be larger than the number of attributes that are attached to this span, if the total number recorded was greater than the configured maximum value. See:SpanLimits.getMaxNumberOfAttributes()
- Specified by:
getTotalAttributeCount
in interfaceSpanData
- Returns:
- The total number of attributes on this span.
-
equals
public boolean equals(@Nullable java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-