From 93ba3d59e7c8c8ca9feaec0a00508d76056b1a85 Mon Sep 17 00:00:00 2001 From: Austin Bonander Date: Tue, 29 Dec 2020 14:28:37 -0800 Subject: [PATCH] fix(logging): make query logging obey level setting for `sqlx::query` target Signed-off-by: Austin Bonander --- sqlx-core/src/logger.rs | 57 +++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 28 deletions(-) diff --git a/sqlx-core/src/logger.rs b/sqlx-core/src/logger.rs index 0abbfc6e..71255ca4 100644 --- a/sqlx-core/src/logger.rs +++ b/sqlx-core/src/logger.rs @@ -31,38 +31,39 @@ impl<'q> QueryLogger<'q> { self.settings.statements_level }; - if let Some(lvl) = lvl.to_level() { - if lvl <= log::STATIC_MAX_LEVEL && lvl <= log::max_level() { - let mut summary = parse_query_summary(&self.sql); + if let Some(lvl) = lvl + .to_level() + .filter(|lvl| log::log_enabled!(target: "sqlx::query", *lvl)) + { + let mut summary = parse_query_summary(&self.sql); - let sql = if summary != self.sql { - summary.push_str(" …"); - format!( - "\n\n{}\n", - sqlformat::format( - &self.sql, - &sqlformat::QueryParams::None, - sqlformat::FormatOptions::default() - ) + let sql = if summary != self.sql { + summary.push_str(" …"); + format!( + "\n\n{}\n", + sqlformat::format( + &self.sql, + &sqlformat::QueryParams::None, + sqlformat::FormatOptions::default() ) - } else { - String::new() - }; + ) + } else { + String::new() + }; - let rows = self.rows; + let rows = self.rows; - log::logger().log( - &log::Record::builder() - .args(format_args!( - "{}; rows: {}, elapsed: {:.3?}{}", - summary, rows, elapsed, sql - )) - .level(lvl) - .module_path_static(Some("sqlx::query")) - .target("sqlx::query") - .build(), - ); - } + log::logger().log( + &log::Record::builder() + .args(format_args!( + "{}; rows: {}, elapsed: {:.3?}{}", + summary, rows, elapsed, sql + )) + .level(lvl) + .module_path_static(Some("sqlx::query")) + .target("sqlx::query") + .build(), + ); } } }