3 unstable releases

0.2.1 Nov 7, 2021
0.2.0 Feb 26, 2021
0.1.0 Jul 11, 2020

#38 in Debugging

Download history 2413/week @ 2021-10-02 2179/week @ 2021-10-09 2386/week @ 2021-10-16 2595/week @ 2021-10-23 2282/week @ 2021-10-30 2420/week @ 2021-11-06 2278/week @ 2021-11-13 2503/week @ 2021-11-20 2549/week @ 2021-11-27 2452/week @ 2021-12-04 2946/week @ 2021-12-11 2803/week @ 2021-12-18 2144/week @ 2021-12-25 3380/week @ 2022-01-01 4582/week @ 2022-01-08 3457/week @ 2022-01-15

13,809 downloads per month
Used in 172 crates (5 directly)

MIT/Apache

19KB
389 lines

tracing-wasm

Leverage performance profiling with your browser tools with the tracing crate.

Crates.io Documentation MIT licensed APACHE licensed

Screenshot of performance reported using the tracing-wasm Subscriber

Note: tracing_wasm uses the global JavaScript console and performance objects. It will not work in environments where one or both of these are not available, such as Node.js or Cloudflare Workers.

Usage

For the simplest out of the box set-up, you can simply set tracing_wasm as your default tracing Subscriber in wasm_bindgen(start)

We have this declared in our ./src/lib.rs

#[wasm_bindgen(start)]
pub fn start() -> Result<(), JsValue> {
    // print pretty errors in wasm https://github.com/rustwasm/console_error_panic_hook
    // This is not needed for tracing_wasm to work, but it is a common tool for getting proper error line numbers for panics.
    console_error_panic_hook::set_once();

    // Add this line:
    tracing_wasm::set_as_global_default();

    Ok(())
}

Dependencies

~2–3MB
~55K SLoC