From 4894505821540a1d94c9c3d4be84a631416a7169 Mon Sep 17 00:00:00 2001 From: Robin Appelman <robin@icewind.nl> Date: Tue, 26 Oct 2021 16:41:29 +0200 Subject: [PATCH] automatically disable colored logging when output is not a tty Signed-off-by: Robin Appelman <robin@icewind.nl> --- Cargo.toml | 2 +- src/main.rs | 17 ++++++++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index a22ab48..6c34325 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ parse-display = "0.5" percent-encoding = "2" rand = "0.8" ahash = "0.7" -flexi_logger = { version = "0.19", features = ["colors"] } +flexi_logger = { version = "0.19", features = ["colors", "atty"] } tokio-stream = { version = "0.1", features = ["net"] } structopt = "0.3" derivative = "2" diff --git a/src/main.rs b/src/main.rs index f7ee889..22db885 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,5 @@ use color_eyre::{eyre::WrapErr, Result}; -use flexi_logger::{colored_detailed_format, detailed_format, Logger}; +use flexi_logger::{detailed_format, AdaptiveFormat, Logger}; use notify_push::config::{Config, Opt}; use notify_push::message::DEBOUNCE_ENABLE; use notify_push::metrics::serve_metrics; @@ -30,14 +30,13 @@ async fn main() -> Result<()> { return Ok(()); } - let log_handle = Logger::try_with_str(&config.log_level)? - .log_to_stdout() - .format(if config.no_ansi { - detailed_format - } else { - colored_detailed_format - }) - .start()?; + let log_handle = Logger::try_with_str(&config.log_level)?.log_to_stdout(); + let log_handle = if config.no_ansi { + log_handle.format_for_stdout(detailed_format) + } else { + log_handle.adaptive_format_for_stdout(AdaptiveFormat::Detailed) + } + .start()?; let (serve_cancel, serve_cancel_handle) = oneshot::channel(); let (metrics_cancel, metrics_cancel_handle) = oneshot::channel(); -- GitLab