trace-context 0.1.0

Extract and inject W3C TraceContext headers
Documentation
  • Coverage
  • 46.15%
    6 out of 13 items documented5 out of 13 items with examples
  • Size
  • Source code size: 27.18 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.8 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 19s Average build duration of successful builds.
  • all releases: 19s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • watson/trace-context
    9 3 2
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • watson

trace-context

Extract and inject W3C TraceContext headers.

Installation

cargo add trace-context

Example usage

let mut headers = http::HeaderMap::new();
headers.insert("traceparent", "00-0af7651916cd43dd8448eb211c80319c-00f067aa0ba902b7-01".parse().unwrap());

let context = trace_context::TraceContext::extract(&headers).unwrap();

assert_eq!(context.trace_id(), u128::from_str_radix("0af7651916cd43dd8448eb211c80319c", 16).unwrap());
assert_eq!(context.parent_id(), u64::from_str_radix("00f067aa0ba902b7", 16).ok());
assert_eq!(context.sampled(), true);

Safety

This crate uses #![deny(unsafe_code)] to ensure everything is implemented in 100% Safe Rust.

License

MIT OR Apache-2.0