logtra

Crates.iologtra
lib.rslogtra
version0.3.2
sourcesrc
created_at2023-03-10 12:18:50.048803
updated_at2023-03-24 18:06:38.969563
descriptionA minimal logging library
homepage
repositoryhttps://github.com/Homuncoli/logtra
max_upload_size
id806401
size22,572
(Homuncoli)

documentation

README

Logtra

Publish Version Lint, Build and Test

logtra is a logging library for Rust.

Features

  • Sinks
    • Register a sink
    • Unregister a sink
  • Log
    • Formatting
      • timestamp
      • current ThreadId
      • module
      • severity
      • name of sink
      • file
      • line
      • color
      • message
    • Macro
      • Different Log Intensities
      • Expressions/Evaluations
      • Asserts
        • Evaluating asserts (assert)
        • Conditional logs (cassert)
        • Panicking asserts (passert)

Usage

logtra is almost entirely macro based.

Example

fn main() {
    sink!(
        ConsoleSink::new(
            SinkDeclaration {
                name: "console".to_string(),
                severity: LogSeverity::Trace,
                module: "".to_string(),
                template: "[%t][%c][%[%i%]][%s][%f:%l]: %m\n".to_string(),
            }
        )
    )

    trace!("Hello World: Trace!");
    debug!("Hello World: Debug!");
    info!("Hello World: Info!");
    warn!("Hello World: Warn!");
    error!("Hello World: Error!");
    fatal!("Hello World: Fatal!");
    log!(Info, &obj);
}
Commit count: 26

cargo fmt