2 stable releases

Uses old Rust 2015

1.1.0 Dec 18, 2022
1.0.1 Jan 26, 2019

#153 in Profiling

Download history 609/week @ 2024-06-19 826/week @ 2024-06-26 547/week @ 2024-07-03 488/week @ 2024-07-10 777/week @ 2024-07-17 626/week @ 2024-07-24 840/week @ 2024-07-31 409/week @ 2024-08-07 454/week @ 2024-08-14 433/week @ 2024-08-21 405/week @ 2024-08-28 486/week @ 2024-09-04 386/week @ 2024-09-11 555/week @ 2024-09-18 507/week @ 2024-09-25 399/week @ 2024-10-02

1,962 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–300KB