pub struct TraceContext { /* private fields */ }Expand description
W3C traceparent shape. All components are lowercase hex.
Implementations§
Source§impl TraceContext
impl TraceContext
Sourcepub fn parse(header: &str) -> Result<Self, DomainError>
pub fn parse(header: &str) -> Result<Self, DomainError>
Parse a traceparent header value. Accepts any version but
only reads the first four dash-separated fields (future
versions append; we ignore anything past the flags).
Sourcepub fn new(
trace_id: impl Into<String>,
span_id: impl Into<String>,
flags: impl Into<String>,
) -> Result<Self, DomainError>
pub fn new( trace_id: impl Into<String>, span_id: impl Into<String>, flags: impl Into<String>, ) -> Result<Self, DomainError>
Build a trace context from caller-supplied hex strings. The callers using this are typically crossing a boundary where the wire format is already validated; still, we re-check to keep the value-object invariant watertight.
Sourcepub fn generate() -> Self
pub fn generate() -> Self
Generate a fresh context with random ids and flags = "01"
(sampled). Used when MADE originates a trace
(no upstream traceparent available).
pub fn trace_id(&self) -> &str
pub fn span_id(&self) -> &str
pub fn flags(&self) -> &str
Trait Implementations§
Source§impl Clone for TraceContext
impl Clone for TraceContext
Source§fn clone(&self) -> TraceContext
fn clone(&self) -> TraceContext
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TraceContext
impl Debug for TraceContext
Source§impl<'de> Deserialize<'de> for TraceContext
impl<'de> Deserialize<'de> for TraceContext
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for TraceContext
impl Display for TraceContext
impl Eq for TraceContext
Source§impl PartialEq for TraceContext
impl PartialEq for TraceContext
Source§impl Serialize for TraceContext
impl Serialize for TraceContext
impl StructuralPartialEq for TraceContext
Auto Trait Implementations§
impl Freeze for TraceContext
impl RefUnwindSafe for TraceContext
impl Send for TraceContext
impl Sync for TraceContext
impl Unpin for TraceContext
impl UnsafeUnpin for TraceContext
impl UnwindSafe for TraceContext
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
Mutably borrows from an owned value. Read more