#log #logging #log-level #utilities #log-debug #log-error

log4wasm

一个风格化的 Rust 生成 WebAssembly 日志实用工具

3 个版本

0.1.3 2023年7月13日
0.1.2 2023年7月13日
0.1.1 2023年7月13日

#604 in WebAssembly

MIT/Apache

16KB
279

log4wasm


✨ 一个具有样式功能的 Rust 生成 wasm 日志实用工具,可以在网页控制台中显示。

请注意,这个crate仍然被认为是实验性的,但就目前的状态而言应该足够稳定。

output of generated example log

入门

您可以通过在 Cargo.toml 的 [dependencies] 部分添加以下内容来开始使用 log4wasm

log4wasm = "0.1.3"

注意log4wasm 依赖于 wasm-bindgen crate 进行代码生成,因此它是当前推荐的可信构建方法。

示例

在您的应用程序中的最小使用案例可能如下所示

fn main() {
    log4wasm::log::info!("A basic, unformatted log with a level of INFO.");
}

log4wasm 提供了一组开箱即用的宏,可用于使用。这些宏在不需要构建自定义日志记录器的情况下可能很有用。

    log4wasm::log::trace!("a basic trace log!");
    log4wasm::log::debug!("a basic debug log!");
    log4wasm::log::info!("a basic info log!");
    log4wasm::log::warning!("a basic warn log!");
    log4wasm::log::error!("a basic error log!");
    log4wasm::log::fatal!("a basic fatal log!");

或者,可以使用指定的构建器创建自定义日志记录器

use log4wasm::logger::{Level, Logger};
use log4wasm::styled::{Color, Decoration, Styled};

// Create a custom logger with a desired name and log level.
let logger = Logger::new_builder()
            .named("MAIN")
            .with_level(Level::Debug)
            .build();

// Create a styling to be applied on the output written to console.
let styled_log = Styled::with_content(format!("A formatted debug log named \"MAIN\" with green, underlined text and an argument of {}", 1))
            .colored(Color::Green)
            .decorate(Decoration::Underline)
            .into_log();

// Write the styled output to console.
logger.print_fmt(styled_log);

依赖项

~6.5–8.5MB
~169K SLoC