A tracing layer for Grafana Loki.
https://docs.rs/tracing-loki
Add this to your Cargo.toml
:
toml
[dependencies]
tracing-loki = "0.1"
```rust use tracingsubscriber::layer::SubscriberExt; use tracingsubscriber::util::SubscriberInitExt; use url::Url;
async fn main() -> Result<(), tracingloki::Error> { let (layer, task) = tracingloki::layer( Url::parse("http://127.0.0.1:3100").unwrap(), vec![("host".into(), "mine".into())].intoiter().collect(), vec![].intoiter().collect(), )?;
// We need to register our layer with `tracing`.
tracing_subscriber::registry()
.with(layer)
// One could add more layers here, for example logging to stdout:
// .with(tracing_subscriber::fmt::Layer::new())
.init();
// The background task needs to be spawned so the logs actually get
// delivered.
tokio::spawn(task);
tracing::info!(
task = "tracing_setup",
result = "success",
"tracing successfully set up",
);
Ok(())
} ```