diff --git a/src/bin/cib.rs b/src/bin/cib.rs index b13ac171..01efd0f0 100644 --- a/src/bin/cib.rs +++ b/src/bin/cib.rs @@ -61,8 +61,12 @@ struct Args { #[clap(long)] config: PathBuf, - /// Se the global log level. Log messages that on at least this - /// level get written to the standard error output. + /// Set the global log level. Log messages at this level or + /// higher get written to the standard error output. + /// + /// Overridden by the `RUST_LOG` environment variable when set, + /// which accepts per-module directives like `debug,cob=info` + /// for finer control over noisy dependencies. #[clap(long, value_enum)] log_level: Option, diff --git a/src/logger.rs b/src/logger.rs index 08700ed4..db802eeb 100644 --- a/src/logger.rs +++ b/src/logger.rs @@ -271,7 +271,6 @@ impl From for tracing::Level { } } -#[allow(clippy::unwrap_used)] pub fn open(level: LogLevel) { #[cfg(test)] let writer = fmt::TestWriter::new(); @@ -281,7 +280,9 @@ pub fn open(level: LogLevel) { let fmt_layer = fmt::layer().with_target(false).with_writer(writer).json(); - let filter_layer = EnvFilter::try_new(level.to_string()).unwrap(); + let filter_layer = EnvFilter::builder() + .with_default_directive(Level::from(level).into()) + .from_env_lossy(); tracing_subscriber::registry() .with(filter_layer)