2 stable releases

Uses old Rust 2015

1.1.0 Dec 18, 2022
1.0.1 Jan 26, 2019

#171 in Profiling

Download history 886/week @ 2024-07-26 505/week @ 2024-08-02 418/week @ 2024-08-09 473/week @ 2024-08-16 400/week @ 2024-08-23 476/week @ 2024-08-30 419/week @ 2024-09-06 457/week @ 2024-09-13 650/week @ 2024-09-20 402/week @ 2024-09-27 449/week @ 2024-10-04 371/week @ 2024-10-11 338/week @ 2024-10-18 224/week @ 2024-10-25 140/week @ 2024-11-01 146/week @ 2024-11-08

874 downloads per month
Used in josh

MIT license

18KB
345 lines

Traces to Chrome's trace_event format

Example

Cargo.toml:

rs_tracing = { version = "1.0", features = ["rs_tracing"] }

main.rs:

fn main() {
    open_trace_file!(".").unwrap();
    {
        trace_scoped!("complete","custom data":"main");
        trace_expr!("trace_expr", println!("trace_expr"));
        trace_begin!("duration");
        println!("trace_duration");
        trace_end!("duration");
    }
    close_trace_file!();
}

also possible to add custom data to all the macros formated like the serde_json::json! macro e.g.

trace_scoped!("complete","custom":230,"more":"data");

lib.rs:

rs_tracing is a crate that outputs trace events to a file in the trace event format.

This format is used by chrome://tracing the output can also be converted to html with trace2html.

If the feature rs_tracing is not set in the toml file the macros expand to nothing, with the exception of trace_expr that will still execute the expression, also all crate dependencies of rs_tracing will be removed.

Dependencies

~0–295KB