From bd31dc85f8e9cb01c1e1a4e49fd4735d24a6da04 Mon Sep 17 00:00:00 2001 From: rtkay123 Date: Sun, 10 Aug 2025 12:55:43 +0200 Subject: chore: collapse stack-up --- lib/warden-stack/src/tracing/loki.rs | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 lib/warden-stack/src/tracing/loki.rs (limited to 'lib/warden-stack/src/tracing/loki.rs') diff --git a/lib/warden-stack/src/tracing/loki.rs b/lib/warden-stack/src/tracing/loki.rs new file mode 100644 index 0000000..cbf4e40 --- /dev/null +++ b/lib/warden-stack/src/tracing/loki.rs @@ -0,0 +1,29 @@ +use crate::Monitoring; + +use super::TracingBuilder; +use super::tracing_builder::{IsUnset, SetLokiTask, State}; +use tracing_subscriber::Layer; + +impl TracingBuilder { + pub fn loki( + mut self, + config: &crate::AppConfig, + monitoring: &Monitoring, + ) -> Result>, crate::ServiceError> + where + S::LokiTask: IsUnset, + { + use std::str::FromStr; + let url = FromStr::from_str(&monitoring.loki_endpoint.as_ref()) + .map_err(|_e| crate::ServiceError::Unknown)?; + + let (layer, task) = tracing_loki::builder() + .label("service_name", config.name.as_ref())? + .extra_field("pid", format!("{}", std::process::id()))? + .build_url(url)?; + + self.layers.push(layer.boxed()); + + Ok(self.loki_internal(task)) + } +} -- cgit v1.2.3