https://github.com/niamster/woodpecker
Logging for Rust
https://github.com/niamster/woodpecker
extensible fast log logging logging-library rust rust-library
Last synced: about 1 year ago
JSON representation
Logging for Rust
- Host: GitHub
- URL: https://github.com/niamster/woodpecker
- Owner: niamster
- License: apache-2.0
- Created: 2017-04-24T23:39:21.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2021-03-18T22:03:54.000Z (over 5 years ago)
- Last Synced: 2025-04-16T20:42:39.101Z (about 1 year ago)
- Topics: extensible, fast, log, logging, logging-library, rust, rust-library
- Language: Rust
- Size: 158 KB
- Stars: 8
- Watchers: 2
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 
[](https://crates.io/crates/woodpecker)
[](https://docs.rs/woodpecker)
[](https://travis-ci.org/niamster/woodpecker)
[](https://ci.appveyor.com/project/niamster/woodpecker)
[](https://codecov.io/gh/niamster/woodpecker)
[](https://coveralls.io/github/niamster/woodpecker?branch=master)
[](https://opensource.org/licenses/Apache-2.0)
# Woodpecker - Logging for [Rust][rust]
### Table of Contents
* [Status](#status)
* [`woodpecker` crate in your project](#in-your-project)
* [Features](#features)
* [License](#license)
* [Credits](#credits)
### Introduction
`woodpecker` is a logging framework for [Rust][rust].
The goal is to have a fast, extensible and easy logging in [Rust][rust] application.
[rust]: http://rust-lang.org
### 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](https://docs.rs/woodpecker).
### In your project
In Cargo.toml:
```toml
[dependencies]
woodpecker = "0.4"
```
In your `main.rs`:
```rust
#[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](https://github.com/niamster/woodpecker/blob/master/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).