Crate tracing_samply

Crate tracing_samply 

Source
Expand description

§tracing-samply

A tracing-subscriber layer that bridges tracing with samply.

Currently, this only records spans as markers using samply’s ad-hoc marker file format, which are then detected at runtime by samply and written to the profile.

Markers for a thread are only detected if samply is attached when the thread is created.

This crate will adapt to any changes upstream. The creator has expressed that the marker file is a temporary measure and that it will be replaced with a more robust solution in the future: https://github.com/mstange/samply/pull/143#issuecomment-2067747892

See also: mstange/samply#349

§Example Profile

samply

§Usage

use tracing_subscriber::prelude::*;

fn main() {
    tracing_subscriber::registry()
        // ... other layers
        .with(tracing_samply::SamplyLayer::new().unwrap())
        .init();
    
    // Your application code that uses `tracing`
}

§Platform Support

PlatformStatus
🐧 Linux
🍎 macOS
🪟 Windows⚠️
  • ✅ = Compiles, tested in CI, works as expected
  • ⚠️ = Compiles, but does not do anything (yet?)

§License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Structs§

SamplyLayer
A tracing layer that bridges tracing events and spans with samply.
SamplyLayerBuilder
SamplyLayer builder.