11 个版本
0.3.0 | 2023年12月24日 |
---|---|
0.2.0 | 2023年10月4日 |
0.1.8 | 2023年9月20日 |
0.1.3 | 2023年1月31日 |
#22 in #tracing-layer
84 每月下载量
26KB
431 行
dd-tracing-layer
一个将日志发送到 Datadog 日志 API 的 跟踪层。
当你无法访问你的基础设施并且无法使用 Datadog Agent 或任何 其他方式 时,它非常有用。
要求
您需要一个 Datadog API 密钥 才能使其正常工作。
端点
此 crate 使用 v2
日志端点,默认情况下会尝试将日志发送到 US1
区域。
您可以根据需要轻松更改区域或提供自定义 URL。
示例
以下是如何设置并使用它的简单示例
use dd_tracing_layer::DatadogOptions;
use tracing_subscriber::prelude::*;
use tracing::{instrument, subscriber};
#[instrument]
fn log(msg: &'static str) {
tracing::info!("your message: {}", msg);
}
fn main() {
let options = DatadogOptions::new("my-service", "my-datadog-api-key")
.with_tags("env:dev");
let dd = dd_tracing_layer::create(options);
let subscriber = tracing_subscriber::registry()
.with(tracing_subscriber::fmt::Layer::new().json())
.with(dd);
let _s = subscriber::set_default(subscriber);
log("hello world!");
}
注意事项
该层将在收到最后一条日志后 5 秒或当缓冲区达到 1000 条日志时发送日志。这基本上是由于 Datadog API 的限制。
依赖项
~10–22MB
~329K SLoC