6 releases (3 breaking)

Uses old Rust 2015

0.4.0 Jun 19, 2017
0.3.0 May 25, 2017
0.2.0 May 15, 2017
0.1.2 Apr 30, 2017

#5 in #extensible

23 downloads per month

Apache-2.0

96KB
2K SLoC

Woodpecker

Crates.io Docs.rs Linux Build Status Windows Build Status Codecov Coveralls License

Woodpecker - Logging for Rust

Table of Contents

Introduction

woodpecker is a logging framework for Rust.

The goal is to have a fast, extensible and easy logging in Rust application.

Status

The project is currently under development and doesn't provide a lot of features.

Although the basic feature logging is well supported!

Features

The main feature is almost zero overhead if no filtering rules are defined and log is not produced.

Currently supported:

  • pluggable format function
  • definition of the logging rules via RUST_LOG environment variable
  • multiple log consumers
  • filtering by module (any part of the module path)
  • filtering by file (any part of the file path)
  • filtering by a line range within a file
  • conditional code execution depending on the log level
  • logging in a dedicated thread
  • logging to stdout/stderr
  • logging to a file
  • log file rotation (by size)

Documentation

Most of the useful documentation can be gotten using rustdoc.

Check it out on docs.rs/woodpecker.

In your project

In Cargo.toml:

[dependencies]
woodpecker = "0.4"

In your main.rs:

#[macro_use]
extern crate woodpecker;
use woodpecker as wp;

fn main() {
    wp::init();

    wp_set_level!(wp::LogLevel::INFO).unwrap();

    info!("It's alive!");
}

See examples/basic.rs for the quick overview.

License

Woodpecker project is licensed under Apache-2.0 license.

Logo is licensed under Creative Commons Attribution (CC BY).

Credits

Sprockets for logo are provided by Jon Daiello and Ray Uribe from the Noun Project under Creative Commons Attribution (CC BY).

Dependencies

~3MB
~58K SLoC