From 27680b6760da6cc994d4e22cc90c41fbb8a5c6fe Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Fri, 17 Oct 2025 11:41:08 -0400 Subject: [PATCH] logging util --- .../create_listen_websocket.rs | 29 ++---------- .../grok_client/src/test_utils/mod.rs | 3 ++ .../src/test_utils/setup_test_logging.rs | 46 +++++++++++++++++++ 3 files changed, 52 insertions(+), 26 deletions(-) create mode 100644 crates/api_clients/grok_client/src/test_utils/setup_test_logging.rs diff --git a/crates/api_clients/grok_client/src/requests/listen_websocket/create_listen_websocket.rs b/crates/api_clients/grok_client/src/requests/listen_websocket/create_listen_websocket.rs index f7b2dbcba0..19e2e0c75a 100644 --- a/crates/api_clients/grok_client/src/requests/listen_websocket/create_listen_websocket.rs +++ b/crates/api_clients/grok_client/src/requests/listen_websocket/create_listen_websocket.rs @@ -94,38 +94,15 @@ pub async fn create_listen_websocket(args: CreateListenWebsocketArgs<'_>) -> Res mod tests { use super::*; use crate::test_utils::get_test_cookies::get_test_cookies; - use chrono::Local; - use env_logger::Builder; + use crate::test_utils::setup_test_logging::setup_test_logging; use errors::AnyhowResult; - use std::io::Write; use log::LevelFilter; - fn setup_logs() { - println!("Log level: {:?}", env::var("RUST_LOG")); - let is_unsafe = env::set_var("RUST_LOG", "trace"); - if is_unsafe.is_none() { - unsafe { std::env::set_var("RUST_LOG", "trace") } - } - println!("Log level: {:?}", env::var("RUST_LOG")); - Builder::new() - .is_test(true) - .format(|buf, record| { - writeln!(buf, - "{} [{}] - {}", - Local::now().format("%H:%M:%S%.6f"), - record.level(), - record.args() - ) - }) - .filter(None, LevelFilter::Trace) - .filter_level(LevelFilter::Trace) - .init(); - } - #[tokio::test] #[ignore] // manually test async fn create() -> AnyhowResult<()> { - setup_logs(); + setup_test_logging(LevelFilter::Trace); + let cookies = get_test_cookies()?; let args = CreateListenWebsocketArgs { cookies: &cookies, diff --git a/crates/api_clients/grok_client/src/test_utils/mod.rs b/crates/api_clients/grok_client/src/test_utils/mod.rs index 6dce54acd7..54c16f3413 100644 --- a/crates/api_clients/grok_client/src/test_utils/mod.rs +++ b/crates/api_clients/grok_client/src/test_utils/mod.rs @@ -1,2 +1,5 @@ #[cfg(test)] pub (crate) mod get_test_cookies; + +#[cfg(test)] +pub (crate) mod setup_test_logging; diff --git a/crates/api_clients/grok_client/src/test_utils/setup_test_logging.rs b/crates/api_clients/grok_client/src/test_utils/setup_test_logging.rs new file mode 100644 index 0000000000..79f514abe5 --- /dev/null +++ b/crates/api_clients/grok_client/src/test_utils/setup_test_logging.rs @@ -0,0 +1,46 @@ +use chrono::Local; +use env_logger::Builder; +use log::LevelFilter; +use std::io::Write; + +const RUST_LOG : &str = "RUST_LOG"; + +pub fn setup_test_logging(level: LevelFilter) { + let level_str = get_level_str(level); + + println!("Previous log level: {:?}", env::var(RUST_LOG)); + + let is_unsafe = env::set_var(RUST_LOG, level_str); + + if is_unsafe.is_none() { + println!("Unsafely setting Rust Log Level..."); + unsafe { std::env::set_var(RUST_LOG, level_str) } + } + + println!("Log level: {:?}", env::var(RUST_LOG)); + + Builder::new() + .is_test(true) + .format(|buf, record| { + writeln!(buf, + "{} [{}] - {}", + Local::now().format("%H:%M:%S%.6f"), + record.level(), + record.args() + ) + }) + .filter(None, level) + .filter_level(level) + .init(); +} + +fn get_level_str(level: LevelFilter) -> &'static str { + match level { + LevelFilter::Error => "error", + LevelFilter::Warn => "warn", + LevelFilter::Info => "info", + LevelFilter::Debug => "debug", + LevelFilter::Trace => "trace", + LevelFilter::Off => "off", + } +}