From 0c60fa706d7f9352f0ed8a60dc426a897621f219 Mon Sep 17 00:00:00 2001 From: Takeru Ohta Date: Sat, 3 Jul 2021 18:29:27 +0900 Subject: [PATCH] Enable flushing for JSON logger --- src/file.rs | 5 ++++- src/terminal.rs | 18 ++++++++++++------ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/file.rs b/src/file.rs index 15294ee..adf3c3d 100644 --- a/src/file.rs +++ b/src/file.rs @@ -154,7 +154,10 @@ impl Build for FileLoggerBuilder { } #[cfg(feature = "json")] Format::Json => { - let drain = slog_json::Json::default(self.appender.clone()); + let drain = slog_json::Json::new(self.appender.clone()) + .set_flush(true) + .add_default_keys() + .build(); self.common.build_with_drain(drain) } }; diff --git a/src/terminal.rs b/src/terminal.rs index cc27680..d0ef21a 100644 --- a/src/terminal.rs +++ b/src/terminal.rs @@ -103,12 +103,18 @@ impl Build for TerminalLoggerBuilder { } #[cfg(feature = "json")] Format::Json => match self.destination { - Destination::Stdout => self - .common - .build_with_drain(slog_json::Json::default(std::io::stdout())), - Destination::Stderr => self - .common - .build_with_drain(slog_json::Json::default(std::io::stderr())), + Destination::Stdout => self.common.build_with_drain( + slog_json::Json::new(std::io::stdout()) + .set_flush(true) + .add_default_keys() + .build(), + ), + Destination::Stderr => self.common.build_with_drain( + slog_json::Json::new(std::io::stderr()) + .set_flush(true) + .add_default_keys() + .build(), + ), }, }; Ok(logger)