sentri_utils/logging.rs
1//! Logging and tracing setup.
2
3use tracing_subscriber::{fmt, prelude::*, EnvFilter};
4
5/// Initialize structured logging with sensible defaults.
6///
7/// # Arguments
8///
9/// * `level` - Log level: "trace", "debug", "info", "warn", "error"
10pub fn setup_tracing(level: &str) {
11 let filter = EnvFilter::try_from_default_env()
12 .unwrap_or_else(|_| EnvFilter::new(level))
13 .add_directive("hyper=info".parse().unwrap_or_default());
14
15 tracing_subscriber::registry()
16 .with(fmt::layer().with_writer(std::io::stderr))
17 .with(filter)
18 .init();
19}