7个版本 (4个重大更改)

使用旧Rust 2015

0.4.0 2017年12月5日
0.3.0 2017年1月18日
0.2.0 2016年11月2日
0.1.0 2016年7月25日
0.0.1 2014年12月3日

#484 in HTTP服务器

Download history 262/week @ 2024-03-13 320/week @ 2024-03-20 273/week @ 2024-03-27 341/week @ 2024-04-03 252/week @ 2024-04-10 309/week @ 2024-04-17 327/week @ 2024-04-24 282/week @ 2024-05-01 247/week @ 2024-05-08 254/week @ 2024-05-15 304/week @ 2024-05-22 296/week @ 2024-05-29 260/week @ 2024-06-05 198/week @ 2024-06-12 292/week @ 2024-06-19 349/week @ 2024-06-26

1,147每月下载量
用于 10 crates

MIT许可证

14KB
204

logger 构建状态

Morgan启发的Iron Web框架的日志中间件。

示例

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))
}

概述

Logger是Iron 核心包的一部分。

Logger使用标准的Rust 日志门面来发射请求和响应信息,格式化为默认格式或自定义格式字符串。

格式字符串可以指定要记录的字段(自#82以来不再支持ANSI终端颜色和属性)。

安装

如果你使用Cargo.toml来管理依赖关系,只需将logger添加到toml

[dependencies.logger]

git = "https://github.com/iron/logger.git"

否则,运行cargo build,rlib将位于你的target目录中。

文档

除了在线文档外,你还可以使用make doc构建本地副本。

示例

日志实现

要实际记录任何内容,您需要使用一些日志实现,将这些日志发送到您希望的位置,例如标准错误输出、文件或日志收集服务。这不是 iron-logger 单独的责任。有众多这样的实现可供选择,从简单的只写入标准错误的实现,如 env_logger,到更可配置的实现,如 simplelog,再到终极解决方案 slog。您可以在 crates.io 上找到更多信息。

如果您正在寻找现成的解决方案,只需参考 env_logger 的示例。

寻求帮助

我们中的一员(@reem@zzmp@theptrk@mcreinhard)通常在 mozilla irc 的 #iron 上。来打个招呼并提问您可能有的任何问题。我们通常也在 #rust#rust-webdev 上。

依赖项

~4.5MB
~113K SLoC