Struct opentelemetry_sdk::trace::Span

source ·
pub struct Span { /* private fields */ }
Expand description

Single operation within a trace.

Implementations§

source§

impl Span

source

pub fn exported_data(&self) -> Option<SpanData>

Convert information in this span into exporter::trace::SpanData. This function copies all data from the current span, which will create a overhead.

Trait Implementations§

source§

impl Debug for Span

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Drop for Span

source§

fn drop(&mut self)

Report span on inner drop

source§

impl Span for Span

source§

fn add_event_with_timestamp<T>( &mut self, name: T, timestamp: SystemTime, attributes: Vec<KeyValue>, )
where T: Into<Cow<'static, str>>,

Records events at a specific time in the context of a given Span.

Note that the OpenTelemetry project documents certain “standard event names and keys” which have prescribed semantic meanings.

source§

fn span_context(&self) -> &SpanContext

Returns the SpanContext for the given Span.

source§

fn is_recording(&self) -> bool

Returns true if this Span is recording information like events with the add_event operation, attributes using set_attributes, status with set_status, etc. Always returns false after span end.

source§

fn set_attribute(&mut self, attribute: KeyValue)

Sets a single Attribute where the attribute properties are passed as arguments.

Note that the OpenTelemetry project documents certain “standard attributes” that have prescribed semantic meanings.

source§

fn set_status(&mut self, status: Status)

Sets the status of this Span.

If used, this will override the default span status, which is Status::Unset.

source§

fn update_name<T>(&mut self, new_name: T)
where T: Into<Cow<'static, str>>,

Updates the Span’s name.

Add Link to this Span

source§

fn end_with_timestamp(&mut self, timestamp: SystemTime)

Finishes the span with given timestamp.

source§

fn add_event<T>(&mut self, name: T, attributes: Vec<KeyValue>)
where T: Into<Cow<'static, str>>,

Record an event in the context this span. Read more
source§

fn record_error(&mut self, err: &dyn Error)

Record an error as an event for this span. Read more
source§

fn set_attributes(&mut self, attributes: impl IntoIterator<Item = KeyValue>)

Set multiple attributes of this span. Read more
source§

fn end(&mut self)

Signals that the operation described by this span has now ended.

Auto Trait Implementations§

§

impl Freeze for Span

§

impl !RefUnwindSafe for Span

§

impl Send for Span

§

impl Sync for Span

§

impl Unpin for Span

§

impl !UnwindSafe for Span

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FutureExt for T

source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ObjectSafeSpan for T
where T: Span,

source§

fn add_event_with_timestamp( &mut self, name: Cow<'static, str>, timestamp: SystemTime, attributes: Vec<KeyValue>, )

An API to record events at a specific time in the context of a given Span. Read more
source§

fn span_context(&self) -> &SpanContext

Returns the SpanContext for the given Span. The returned value may be used even after the Span is finished. The returned value MUST be the same for the entire Span` lifetime.
source§

fn is_recording(&self) -> bool

Returns true if this Span is recording information like events with the add_event operation, attributes using set_attributes, status with set_status, etc. Read more
source§

fn set_attribute(&mut self, attribute: KeyValue)

An API to set a single Attribute where the attribute properties are passed as arguments. To avoid extra allocations some implementations may offer a separate API for each of the possible value types. Read more
source§

fn set_status(&mut self, status: Status)

Sets the status of the Span. message MUST be ignored when the status is OK or Unset. Read more
source§

fn update_name(&mut self, new_name: Cow<'static, str>)

Updates the Span’s name. After this update, any sampling behavior based on the name will depend on the implementation. Read more
Adds a link to this span
source§

fn end_with_timestamp(&mut self, timestamp: SystemTime)

Finishes the Span with given timestamp Read more
source§

fn end(&mut self)

Finishes the Span. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more