Skip to main content

Module traceparent

Module traceparent 

Source
Expand description

W3C Trace Context types: TraceId, SpanId, and TraceContext.

This module implements the W3C Trace Context Level 1 spec, covering the traceparent header format:

traceparent: 00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01
             ^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^
             version  trace-id (32 hex)          span-id (16 hex) flags

§Example

use api_bones::traceparent::{TraceContext, SamplingFlags};

let tc: TraceContext = "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
    .parse()
    .unwrap();

assert!(tc.flags.is_sampled());
assert_eq!(tc.to_string(),
    "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01");

Structs§

SamplingFlags
W3C Trace Context sampling flags byte.
SpanId
A 64-bit W3C span identifier, encoded as 16 lowercase hex characters.
TraceContext
A parsed W3C traceparent header value.
TraceId
A 128-bit W3C trace identifier, encoded as 32 lowercase hex characters.

Enums§

TraceContextError
Error returned when parsing a traceparent header fails.