1 个不稳定版本

0.1.0 2021 年 6 月 20 日

#84#前端

BSD-3-Clause 许可协议

25KB
331 行代码(不包括注释)

glog for Rust

CI

这是将著名的 C++ 日志框架 glog 端口到 Rust 的 标准日志 前端。

⚠️ 稳定性警告:目前此框架没有测试。这将在下一个版本中添加。目前框架仅通过手动测试来验证当前功能集。

简介

glog-rs 尽量保持与 glog 一致,以保持兼容性,这在同时使用 C++ 和 Rust 代码的混合环境中非常有用。

这包括标志的默认值、标志名称和行为。

可以在初始化框架之前启用附加选项或配置,以使用更多 Rust 标准日志 前端提供的功能,或解决不同的用例。

示例

最简单的示例是

use log::*;
use glog::Flags;

glog::new().init(Flags::default()).unwrap();

info!("It works!");

这会将 I0401 12:34:56.987654 123 readme.rs:6] It works! 写入 INFO 日志文件。

如果您想在 stderr 上也有彩色输出,请考虑使用一些标志进行初始化

glog::new().init(Flags {
        colorlogtostderr: true,
        alsologtostderr: true, // use logtostderr to only write to stderr and not to files
        ..Default::default()
    }).unwrap();

一个非标准的扩展是在时间戳中除了月份和日期外,还包括年份。这可以通过在 init 之前调用 with_year 方法来实现,如下所示

glog::new()
    .with_year(true) // Add the year to the timestamp in the logfile
    .init(Flags {
        logtostderr: true, // don't write to log files
        ..Default::default()
    }).unwrap();

info!("With the year");

将打印 I20210401 12:34:56.987654 123 readme.rs:11] 使用年份

灵感来源

此项目受到伟大的C++日志框架glogstderrlog-rs的启发,作为Rust日志后端的启动项目。

依赖项

~5–45MB
~698K SLoC