diff --git a/Cargo.lock b/Cargo.lock index d940f9f..6a4bb3f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2057,6 +2057,15 @@ dependencies = [ "hashify", ] +[[package]] +name = "matchers" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" +dependencies = [ + "regex-automata", +] + [[package]] name = "matchit" version = "0.8.4" @@ -3940,9 +3949,13 @@ version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" dependencies = [ + "matchers", "nu-ansi-term", + "once_cell", + "regex-automata", "sharded-slab", "thread_local", + "tracing", "tracing-core", ] diff --git a/Cargo.toml b/Cargo.toml index 79dcdfe..10c054d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -31,7 +31,7 @@ shellexpand = "3.1" # Logging - minimal tracing = { version = "0.1", default-features = false } -tracing-subscriber = { version = "0.3", default-features = false, features = ["fmt", "ansi"] } +tracing-subscriber = { version = "0.3", default-features = false, features = ["fmt", "ansi", "env-filter"] } # Observability - Prometheus metrics prometheus = { version = "0.14", default-features = false } diff --git a/src/main.rs b/src/main.rs index dbc76ff..90d75ae 100644 --- a/src/main.rs +++ b/src/main.rs @@ -35,7 +35,7 @@ use anyhow::{bail, Result}; use clap::{Parser, Subcommand}; use tracing::{info, Level}; -use tracing_subscriber::FmtSubscriber; +use tracing_subscriber::{fmt, EnvFilter}; mod agent; mod channels; @@ -367,9 +367,11 @@ async fn main() -> Result<()> { let cli = Cli::parse(); - // Initialize logging - let subscriber = FmtSubscriber::builder() - .with_max_level(Level::INFO) + // Initialize logging - respects RUST_LOG env var, defaults to INFO + let subscriber = fmt::Subscriber::builder() + .with_env_filter( + EnvFilter::try_from_default_env().unwrap_or_else(|_| EnvFilter::new("info")), + ) .finish(); tracing::subscriber::set_global_default(subscriber).expect("setting default subscriber failed");