4 个版本
0.1.3 | 2021 年 11 月 19 日 |
---|---|
0.1.2 | 2021 年 11 月 13 日 |
0.1.1 | 2021 年 11 月 13 日 |
0.1.0 | 2021 年 11 月 13 日 |
#1006 in 数据结构
27KB
298 行
Loki Logger
示例
extern crate log;
extern crate loki_logger;
use log::LevelFilter;
#[tokio::main]
async fn main() {
loki_logger::init(
"http://loki:3100/loki/api/v1/push",
log::LevelFilter::Info,
).unwrap();
log::info!("Logged into Loki !");
}
extern crate log;
extern crate loki_logger;
use std::iter::FromIterator;
use std::collections::HashMap;
use log::LevelFilter;
#[tokio::main]
async fn main() {
let initial_labels = HashMap::from_iter([
("application".to_string(), "loki_logger".to_string()),
("environment".to_string(), "development".to_string()),
]);
loki_logger::init_with_labels(
"http://loki:3100/loki/api/v1/push",
log::LevelFilter::Info,
initial_labels,
).unwrap();
log::info!("Logged into Loki !");
}
使用额外的标签
从 0.4.7 版本开始,log
包开始引入新的键/值系统,用于结构化日志记录。
此包大量使用此系统来创建和发送自定义 Loki 标签。
如果您想使用此系统,您必须使用 log 包的 git 版本并启用 kv_unstable
功能
[dependencies.log]
# It is recommended that you pin this version to a specific commit to avoid issues.
git = "https://github.com/rust-lang/log.git"
features = ["kv_unstable"]
此功能将允许您将 log
外观用作
extern crate log;
extern crate loki_logger;
use std::iter::FromIterator;
use std::collections::HashMap;
use log::LevelFilter;
#[tokio::main]
async fn main() {
let initial_labels = HashMap::from_iter([
("application".to_string(), "loki_logger".to_string()),
("environment".to_string(), "development".to_string()),
]);
loki_logger::init_with_labels(
"http://loki:3100/loki/api/v1/push",
log::LevelFilter::Info,
initial_labels,
).unwrap();
// Due to stabilization issue, this is still unstable,
// the log macros needs to have at least one formatting parameter for this to work.
log::info!(foo = "bar"; "Logged into Loki !{}", "");
}
依赖项
~6–18MB
~276K SLoC