pub struct Span { /* private fields */ }Expand description
Single operation within a trace.
Implementations§
Trait Implementations§
Source§impl Span for Span
impl Span for Span
Source§fn add_event_with_timestamp<T>(
&mut self,
name: T,
timestamp: SystemTime,
attributes: Vec<KeyValue>,
)
fn add_event_with_timestamp<T>( &mut self, name: T, timestamp: SystemTime, attributes: Vec<KeyValue>, )
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
fn span_context(&self) -> &SpanContext
Returns the SpanContext for the given Span.
Source§fn is_recording(&self) -> bool
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)
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)
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)
fn update_name<T>(&mut self, new_name: T)
Updates the Span’s name.
Source§fn add_link(&mut self, span_context: SpanContext, attributes: Vec<KeyValue>)
fn add_link(&mut self, span_context: SpanContext, attributes: Vec<KeyValue>)
Add Link to this Span
Source§fn end_with_timestamp(&mut self, timestamp: SystemTime)
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>)
fn add_event<T>(&mut self, name: T, attributes: Vec<KeyValue>)
Source§fn record_error(&mut self, err: &dyn Error)
fn record_error(&mut self, err: &dyn Error)
Source§fn set_attributes(&mut self, attributes: impl IntoIterator<Item = KeyValue>)
fn set_attributes(&mut self, attributes: impl IntoIterator<Item = KeyValue>)
Auto Trait Implementations§
impl Freeze for Span
impl !RefUnwindSafe for Span
impl Send for Span
impl Sync for Span
impl Unpin for Span
impl UnsafeUnpin for Span
impl !UnwindSafe for Span
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> ObjectSafeSpan for Twhere
T: Span,
impl<T> ObjectSafeSpan for Twhere
T: Span,
Source§fn add_event_with_timestamp(
&mut self,
name: Cow<'static, str>,
timestamp: SystemTime,
attributes: Vec<KeyValue>,
)
fn add_event_with_timestamp( &mut self, name: Cow<'static, str>, timestamp: SystemTime, attributes: Vec<KeyValue>, )
Span. Read moreSource§fn span_context(&self) -> &SpanContext
fn span_context(&self) -> &SpanContext
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
fn is_recording(&self) -> bool
Span is recording information like events with the add_event
operation, attributes using set_attributes, status with set_status, etc. Read moreSource§fn set_attribute(&mut self, attribute: KeyValue)
fn set_attribute(&mut self, attribute: KeyValue)
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 moreSource§fn set_status(&mut self, status: Status)
fn set_status(&mut self, status: Status)
Source§fn update_name(&mut self, new_name: Cow<'static, str>)
fn update_name(&mut self, new_name: Cow<'static, str>)
Span’s name. After this update, any sampling behavior based on the
name will depend on the implementation. Read moreSource§fn add_link(&mut self, span_context: SpanContext, attributes: Vec<KeyValue>)
fn add_link(&mut self, span_context: SpanContext, attributes: Vec<KeyValue>)
Source§fn end_with_timestamp(&mut self, timestamp: SystemTime)
fn end_with_timestamp(&mut self, timestamp: SystemTime)
Span with given timestamp Read more