Skip to main content

ObsTraceCtx

Struct ObsTraceCtx 

Source
pub struct ObsTraceCtx {
    pub trace_id: String,
    pub span_id: String,
    pub flags: String,
    pub tracestate: String,
}
Expand description

Parsed W3C trace context.

Fields are stored as the canonical lowercase-hex strings the W3C traceparent header uses. trace_id is 32 hex chars, span_id is 16 hex chars, flags is 2 hex chars (00 = unsampled, 01 = sampled).

Fields§

§trace_id: String

32-character hex trace id.

§span_id: String

16-character hex span id.

§flags: String

01 (sampled) or 00.

§tracestate: String

Optional tracestate header value (vendor-specific).

Implementations§

Source§

impl ObsTraceCtx

Source

pub fn sampled(&self) -> bool

True if flags & 0x01 == 1.

Source

pub fn fresh(sampled: bool) -> Self

Build a fresh context with a new trace id and span id, with the supplied sampling decision. Useful for client-side root spans.

Source

pub fn child_of(&self) -> Self

Build a child context that inherits the parent trace id and flags, but mints a fresh span id.

Trait Implementations§

Source§

impl Clone for ObsTraceCtx

Source§

fn clone(&self) -> ObsTraceCtx

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ObsTraceCtx

Source§

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

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

impl Default for ObsTraceCtx

Source§

fn default() -> ObsTraceCtx

Returns the “default value” for a type. Read more
Source§

impl PartialEq for ObsTraceCtx

Source§

fn eq(&self, other: &ObsTraceCtx) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ObsTraceCtx

Source§

impl StructuralPartialEq for ObsTraceCtx

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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.