#google-cloud #logging #stackdriver #log #google #cloud

stackdriver_logger

适用于Google Stackdriver的日志记录器,带有适用于本地开发的命令行友好回退

16个版本 (8个破坏性)

0.8.2 2022年12月20日
0.8.1 2022年11月14日
0.8.0 2020年7月29日
0.7.0 2020年2月12日
0.1.4 2018年7月31日

#306 in 调试

Download history 1221/week @ 2024-04-01 863/week @ 2024-04-08 879/week @ 2024-04-15 728/week @ 2024-04-22 1044/week @ 2024-04-29 726/week @ 2024-05-06 686/week @ 2024-05-13 788/week @ 2024-05-20 598/week @ 2024-05-27 864/week @ 2024-06-03 980/week @ 2024-06-10 558/week @ 2024-06-17 516/week @ 2024-06-24 503/week @ 2024-07-01 996/week @ 2024-07-08 591/week @ 2024-07-15

每月2,623次下载

MIT/Apache

19KB
302

Stackdriver logger

Google Stackdriver的日志记录器。
默认情况下,在调试模式下,我们将回退到 pretty_env_logger
在发布模式下,我们输出与Stackdriver兼容的JSON格式日志。

使用方法

use log::{error, info, trace, debug, warn};

fn main() {
    stackdriver_logger::init_with_cargo!();

    trace!("trace log");
    debug!("debug log");
    info!("info log");
    warn!("warn log");
    error!("error log");
}

请注意,init_with_cargo! 宏将包括你的 Cargo.toml 在生成的二进制文件中。如果你不希望这样,请查看文档,还有一些其他的初始化器可用。

行为

当使用上述宏时,你不需要做任何事情。对于其他初始化器,你可能需要提供两个环境变量: SERVICE_NAMESERVICE_VERSION。我们使用Cargo的 CARGO_PKG_NAMECARGO_PKG_VERSION 作为回退,但这些只有在通过Cargo运行你的应用程序时才可用。
查看文档以了解哪些初始化器需要环境变量。

启用日志记录

此库接受一个 RUST_LOG 环境变量,它的工作方式与 env_logger 相同。
默认情况下,除了 error! 之外,所有内容都被禁用。要为你的应用程序启用所有日志

RUST_LOG=your_application cargo run

有关更多详细信息,请参阅 env_logger 文档

功能标志

默认情况下,此crate启用所有 env_logger 默认功能,并始终拉取 pretty_env_logger
这些crate有一些重依赖,如 regex
如果您想在生产中使用更小的构建,并且不使用复杂的 env_logger 功能,您可以通过以下方式禁用 stackdriver_logger 的默认功能:

stackdriver_logger = { version = "*", default-features = false, features = ["prod"] }

许可证

在以下许可证下获得许可:

依赖项

~4–13MB
~145K SLoC