Skip to content

SARDONYX-sard/quick_tracing

Repository files navigation

Quick Tracing

tracing initialization library to easily get started with tracing.

fn main() -> std:io::Result<()> {
     let _guard = quick_tracing::init()?;
     tracing::info!("Hey!");
     Ok(())
 }

Derive

Need to write the following it in Cargo.toml

features = ["derive"]

Attributes

  • test: Sets the test name for the logger. Log output will be written to a file named ../../logs/{test_name}.log.
  • file: Sets the file path for the log output.
  • stdio: Enables standard I/O output for the logger.(default: true)
  • level: Sets the log level filter (e.g., TRACE, DEBUG, INFO, WARN, ERROR).

Examples

#[quick_tracing::init]
fn main() {
    tracing::debug!("Hello, world!");
}
  • Debug mode Output file

    If there is no parent directory, it will automatically create one.

Warning

Panic is a possibility.

#[quick_tracing::init(level= "DEBUG", file = "./log/test.log", stdio = false)]
fn main() {
    tracing::debug!("Hello, world!");
}
  • non panic Debug mode Output file

    If there is no parent directory, it will automatically create one.

#[quick_tracing::try_init(level= "DEBUG", file = "./log/test.log", stdio = false)]
fn main() -> std::io::Result<()> {
    tracing::debug!("Hello, world!");
    Ok(())
}