narlog 0.2.0

Colorful and minimal logger library
Documentation
narlog-0.2.0 has been yanked.

Narlog Version Narlog Docs Narlog Downloads Narlog GitHub Last Commit Narlog GitHub Stars

Narlog

Narlog is a colorful and minimal logger library.
Warning: This project is still under development. Any version might have breaking changes.

Features

  • Lightweight: Built with minimal dependencies
  • Colorful: Colorful output with owo-colors

Installation

Run this command on your rust project root:

cargo add narlog

Usage

Using Logger struct (examples/basic_logging.rs):

use std::io;
use std::io::ErrorKind;
use narlog::prelude::*;

fn main() {
    let logger = Logger::new();
    let error = io::Error::new(ErrorKind::Other, "velit esse cillum dolore eu fugiat nulla pariatur");
    logger.trace("Lorem ipsum dolor sit amet");
    logger.info("consectetur adipiscing elit");
    logger.debug("sed do eiusmod tempor incididunt ut labore et dolore magna aliqua");
    logger.warn("Ut enim ad minim veniam");
    logger.error("quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat", Some(&error));
    logger.fatal("Duis aute irure dolor in reprehenderit in voluptate", Some(&error));
}

Using macros (examples/macros.rs):

use std::io;
use std::io::ErrorKind;
use narlog::prelude::*;

fn main() {
    let error = io::Error::new(ErrorKind::Other, "velit esse cillum dolore eu fugiat nulla pariatur");
    trace!("Lorem ipsum dolor sit amet");
    info!("consectetur adipiscing elit");
    debug!("sed do eiusmod tempor incididunt ut labore et dolore magna aliqua");
    warn!("Ut enim ad minim veniam");
    error!("quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat");
    error!("quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat", &error);
    fatal!("Duis aute irure dolor in reprehenderit in voluptate");
    fatal!("Duis aute irure dolor in reprehenderit in voluptate", &error);
}

Changelog

0.2.0

  • Added support for Logger::new(), .with_prefix() and .with_timestamp()
  • Added prelude module for include all essential items
  • Moved LogLevel and TimestampType enums to src/enums.rs

0.1.2

  • Added badges to README.md

0.1.1

  • Added table of Contents to README.md
  • Added welcome message to src/lib.rs

0.1.0

  • Initial Version!