From ba4009170bcfa3ecaeb182ef1744aa9c7ebe8508 Mon Sep 17 00:00:00 2001 From: Michael-F-Bryan Date: Fri, 9 Jun 2023 15:26:11 +0800 Subject: [PATCH] Disable logging unless the $RUST_LOG variable is set --- Cargo.lock | 1 - lib/cli/Cargo.toml | 1 - lib/cli/src/cli.rs | 2 ++ lib/cli/src/commands/run.rs | 5 ----- lib/cli/src/logging.rs | 20 ++++---------------- 5 files changed, 6 insertions(+), 23 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 03d32af84e7..b8aeb1b7c6f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5633,7 +5633,6 @@ dependencies = [ "cfg-if 1.0.0", "chrono", "clap 4.3.2", - "clap-verbosity-flag", "colored 2.0.0", "dialoguer", "dirs", diff --git a/lib/cli/Cargo.toml b/lib/cli/Cargo.toml index 2bbc529f89c..62167fb5007 100644 --- a/lib/cli/Cargo.toml +++ b/lib/cli/Cargo.toml @@ -91,7 +91,6 @@ object = "0.30.0" wasm-coredump-builder = { version = "0.1.11", optional = true } tracing = { version = "0.1" } tracing-subscriber = { version = "0.3", features = [ "env-filter", "fmt" ] } -clap-verbosity-flag = "2" async-trait = "0.1.68" tokio = { version = "1.28.1", features = ["macros", "rt-multi-thread"] } once_cell = "1.17.1" diff --git a/lib/cli/src/cli.rs b/lib/cli/src/cli.rs index d8734a17556..8cd828a3f98 100644 --- a/lib/cli/src/cli.rs +++ b/lib/cli/src/cli.rs @@ -218,6 +218,8 @@ pub fn wasmer_main() { } fn wasmer_main_inner() -> Result<(), anyhow::Error> { + crate::logging::set_up_logging(); + // We try to run wasmer with the normal arguments. // Eg. `wasmer ` // In case that fails, we fallback trying the Run subcommand directly. diff --git a/lib/cli/src/commands/run.rs b/lib/cli/src/commands/run.rs index 85505b18da1..f2dea753a1d 100644 --- a/lib/cli/src/commands/run.rs +++ b/lib/cli/src/commands/run.rs @@ -16,7 +16,6 @@ use std::{ use anyhow::{Context, Error}; use clap::Parser; -use clap_verbosity_flag::WarnLevel; use once_cell::sync::Lazy; use sha2::{Digest, Sha256}; use tempfile::NamedTempFile; @@ -58,8 +57,6 @@ static WASMER_HOME: Lazy = Lazy::new(|| { /// The unstable `wasmer run` subcommand. #[derive(Debug, Parser)] pub struct Run { - #[clap(flatten)] - verbosity: clap_verbosity_flag::Verbosity, /// The Wasmer home directory. #[clap(long = "wasmer-dir", env = "WASMER_DIR", default_value = WASMER_HOME.as_os_str())] wasmer_dir: PathBuf, @@ -92,7 +89,6 @@ impl Run { } fn execute_inner(&self) -> Result<(), Error> { - crate::logging::set_up_logging(self.verbosity.log_level_filter()); let runtime = tokio::runtime::Builder::new_multi_thread() .enable_all() .build()?; @@ -360,7 +356,6 @@ impl Run { }; let store = StoreOptions::default(); Ok(Run { - verbosity: clap_verbosity_flag::Verbosity::new(0, 0), wasmer_dir: WASMER_HOME.clone(), store, wasi: Wasi::for_binfmt_interpreter()?, diff --git a/lib/cli/src/logging.rs b/lib/cli/src/logging.rs index 54ce76c6275..987c3fa6446 100644 --- a/lib/cli/src/logging.rs +++ b/lib/cli/src/logging.rs @@ -1,11 +1,12 @@ //! Logging functions for the debug feature. use tracing_subscriber::{ - filter::Directive, fmt, layer::SubscriberExt, util::SubscriberInitExt, EnvFilter, + fmt, layer::SubscriberExt, util::SubscriberInitExt, EnvFilter, }; -/// Subroutine to instantiate the loggers -pub fn set_up_logging(level: log::LevelFilter) { +/// Initialize logging based on the `$RUST_LOG` environment variable. Logs will +/// be disabled when `$RUST_LOG` isn't set. +pub fn set_up_logging() { let fmt_layer = fmt::layer() .with_target(true) .with_span_events(fmt::format::FmtSpan::CLOSE) @@ -15,7 +16,6 @@ pub fn set_up_logging(level: log::LevelFilter) { .compact(); let filter_layer = EnvFilter::builder() - .with_default_directive(log_directive(level)) .from_env_lossy(); tracing_subscriber::registry() @@ -34,15 +34,3 @@ fn should_emit_colors() -> bool { isatty::stderr_isatty() && std::env::var_os("NO_COLOR").is_none() } -fn log_directive(level: log::LevelFilter) -> Directive { - let tracing_level = match level { - log::LevelFilter::Off => tracing::level_filters::LevelFilter::OFF, - log::LevelFilter::Error => tracing::level_filters::LevelFilter::ERROR, - log::LevelFilter::Warn => tracing::level_filters::LevelFilter::WARN, - log::LevelFilter::Info => tracing::level_filters::LevelFilter::INFO, - log::LevelFilter::Debug => tracing::level_filters::LevelFilter::DEBUG, - log::LevelFilter::Trace => tracing::level_filters::LevelFilter::TRACE, - }; - - tracing_level.into() -}