#debugging #tracing #trace

build libftrace

Extemely simple function tracer, useful for debugging

4 releases

Uses new Rust 2024

0.0.4 Nov 20, 2025
0.0.3 Nov 18, 2025
0.0.2 Nov 18, 2025
0.0.1 Nov 18, 2025

#221 in Visualization

MIT license

37KB
668 lines

libftrace

CI crates.io docs.rs

Extemely simple function tracer, useful for debugging.

Usage

Before diving too deep, you should add the crate to your Cargo.toml:

[dependencies]
libftrace = "^0"

Then, add the `#libftrace::traced`` attribute to add spanning to a function:

use libftrace::traced;

#[traced]
fn handle_request(req: Request) {
    // ..
}

Development Usage

Tracing attributes can be expensive for performance, so ftrace includes a way to disable it. To disable it, disable the enable feature (which is the only default feature):

[dependencies]
libftrace = { version = "^0", default-features = false }

Currently, the dependencies of ftrace are still pulled, but there will be no performance cost of using it, while disabled.

Dependencies

~1–3.5MB
~66K SLoC