#web #wasm #tracing #log

tracing-web

A tracing compatible subscriber layer for web platforms

3 releases

Uses new Rust 2021

0.1.2 Aug 19, 2022
0.1.1 Aug 19, 2022
0.1.0 Aug 19, 2022

#441 in WebAssembly

46 downloads per month

MIT/Apache

19KB
322 lines

tracing-web

A tracing compatible subscriber layer for web platforms.

Crates.io Documentation MIT licensed Apache licensed

Documentation

Overview

tracing-web can be used in conjunction with the tracing-subscriber crate to quickly install a subscriber that emits messages to the dev-tools console, and events to the Performance API. An example configuration can look like

use tracing_web::{MakeConsoleWriter, performance_layer};
use tracing_subscriber::fmt::format::Pretty;
use tracing_subscriber::fmt::time::UtcTime;
use tracing_subscriber::prelude::*;

fn main() {
    let fmt_layer = tracing_subscriber::fmt::layer()
        .with_ansi(false) // Only partially supported across browsers
        .with_timer(UtcTime::rfc_3339()) // std::time is not available in browsers
        .with_writer(MakeConsoleWriter); // write events to the console
    let perf_layer = performance_layer()
        .with_details_from_fields(Pretty::default());

    tracing_subscriber::registry()
        .with(fmt_layer)
        .with(perf_layer)
        .init(); // Install these as subscribers to tracing events

    todo!("write your awesome application");
}

License

This project is dual licensed under the MIT license and the Apache license.

Dependencies

~9MB
~173K SLoC