7 releases (4 breaking)
Uses old Rust 2015
0.4.0 | Dec 5, 2017 |
---|---|
0.3.0 | Jan 18, 2017 |
0.2.0 | Nov 2, 2016 |
0.1.0 | Jul 25, 2016 |
0.0.1 | Dec 3, 2014 |
#666 in HTTP server
1,008 downloads per month
Used in 10 crates
14KB
204 lines
logger
Morgan-inspired logging middleware for the Iron web framework.
Example
extern crate iron;
extern crate logger;
use iron::prelude::*;
use logger::Logger;
fn main() {
let (logger_before, logger_after) = Logger::new(None);
let mut chain = Chain::new(no_op_handler);
// Link logger_before as your first before middleware.
chain.link_before(logger_before);
// Link logger_after as your *last* after middleware.
chain.link_after(logger_after);
Iron::new(chain).http("127.0.0.1:3000").unwrap();
}
fn no_op_handler(_: &mut Request) -> IronResult<Response> {
Ok(Response::with(iron::status::Ok))
}
Overview
Logger is a part of Iron's core bundle.
Logger emits request and response information using standard rust log facade, formatted with default format or a custom format string.
Format strings can specify fields to be logged (ANSI terminal colors and attributes is no longer supported since #82).
Installation
If you're using a Cargo.toml
to manage dependencies, just add logger to the toml:
[dependencies.logger]
git = "https://github.com/iron/logger.git"
Otherwise, cargo build
, and the rlib will be in your target
directory.
Documentation
Along with the online documentation,
you can build a local copy with make doc
.
Examples
Log implementations
To actually log anything, you will need to use some log implementation that will deliver the logs to your desired location, like standard error output, a file or log collecting service. This is not responsibility of iron-logger alone. There are numerous such implementations to choose from, from simple ones that just write to standard error like env_logger, more configurable ones like simplelog to ultimate solutions like slog. You can find more on crates.io.
If you are looking for turn-key solution, just follow example from env_logger.
Get Help
One of us (@reem, @zzmp,
@theptrk, @mcreinhard)
is usually on #iron
on the mozilla irc. Come say hi and ask any questions you might have.
We are also usually on #rust
and #rust-webdev
.
Dependencies
~4.5MB
~102K SLoC