Skip to content

Commit be65aaf

Browse files
authored
database: log queries at the trace level (#105)
1 parent 28684c6 commit be65aaf

3 files changed

Lines changed: 24 additions & 15 deletions

File tree

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ serde_urlencoded = "0.7"
9595
serde_with = "3"
9696
serde_yaml = "0.9"
9797
sigpipe = "0.1"
98-
slog = { version = "2.7", features = [ "release_max_level_debug" ] }
98+
slog = { version = "2.7", features = [ "release_max_level_trace", "max_level_trace" ] }
9999
slog-bunyan = "2.4"
100100
slog-term = "2.7"
101101
smf = { git = "https://github.com/illumos/smf-rs.git" }

common/src/lib.rs

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ where
2727
}
2828

2929
pub fn make_log(name: &'static str) -> Logger {
30-
let filter_level = match std::env::var("BUILDOMAT_DEBUG")
31-
.map(|v| v.to_ascii_lowercase())
32-
.as_deref()
33-
{
34-
Ok("yes") | Ok("1") | Ok("true") => slog::Level::Debug,
35-
_ => slog::Level::Info,
30+
let filter_level = if bool_env("BUILDOMAT_TRACE") {
31+
slog::Level::Trace
32+
} else if bool_env("BUILDOMAT_DEBUG") {
33+
slog::Level::Debug
34+
} else {
35+
slog::Level::Info
3636
};
3737

3838
if std::io::stdout().is_terminal() {
@@ -61,6 +61,15 @@ pub fn make_log(name: &'static str) -> Logger {
6161
}
6262
}
6363

64+
fn bool_env(var: &str) -> bool {
65+
if let Ok(content) = std::env::var(var) {
66+
let lower = content.to_ascii_lowercase();
67+
lower == "1" || lower == "yes" || lower == "true"
68+
} else {
69+
false
70+
}
71+
}
72+
6473
pub async fn sleep_ms(ms: u64) {
6574
tokio::time::sleep(Duration::from_millis(ms)).await;
6675
}

database/src/lib.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ use sea_query::{
1616
SelectStatement, SqliteQueryBuilder, UpdateStatement, Value,
1717
};
1818
use sea_query_rusqlite::{RusqliteBinder, RusqliteValues};
19-
use slog::{debug, Logger};
19+
use slog::{trace, Logger};
2020
use thiserror::Error;
2121

2222
#[usdt::provider]
@@ -622,7 +622,7 @@ impl<'a> Handle<'a> {
622622
s: SelectStatement,
623623
) -> DBResult<Option<T>> {
624624
let (q, v) = s.build_rusqlite(SqliteQueryBuilder);
625-
debug!(self.log, "query: {q}"; "sql" => true);
625+
trace!(self.log, "query: {q}"; "sql" => true);
626626

627627
sql__query__start!(|| &q);
628628
let mut s = self.tx.prepare(&q)?;
@@ -639,7 +639,7 @@ impl<'a> Handle<'a> {
639639

640640
pub fn get_strings(&mut self, s: SelectStatement) -> DBResult<Vec<String>> {
641641
let (q, v) = s.build_rusqlite(SqliteQueryBuilder);
642-
debug!(self.log, "query: {q}"; "sql" => true);
642+
trace!(self.log, "query: {q}"; "sql" => true);
643643

644644
sql__query__start!(|| &q);
645645
let mut s = self.tx.prepare(&q)?;
@@ -655,7 +655,7 @@ impl<'a> Handle<'a> {
655655
s: SelectStatement,
656656
) -> DBResult<Vec<T>> {
657657
let (q, v) = s.build_rusqlite(SqliteQueryBuilder);
658-
debug!(self.log, "query: {q}"; "sql" => true);
658+
trace!(self.log, "query: {q}"; "sql" => true);
659659

660660
sql__query__start!(|| &q);
661661
let mut s = self.tx.prepare(&q)?;
@@ -668,7 +668,7 @@ impl<'a> Handle<'a> {
668668

669669
pub fn get_row<T: FromRow>(&mut self, s: SelectStatement) -> DBResult<T> {
670670
let (q, v) = s.build_rusqlite(SqliteQueryBuilder);
671-
debug!(self.log, "query: {q}"; "sql" => true);
671+
trace!(self.log, "query: {q}"; "sql" => true);
672672

673673
sql__query__start!(|| &q);
674674
let mut s = self.tx.prepare(&q)?;
@@ -685,19 +685,19 @@ impl<'a> Handle<'a> {
685685

686686
pub fn exec_delete(&mut self, d: DeleteStatement) -> DBResult<usize> {
687687
let (q, v) = d.build_rusqlite(SqliteQueryBuilder);
688-
debug!(self.log, "query: {q}"; "sql" => true);
688+
trace!(self.log, "query: {q}"; "sql" => true);
689689
self.exec(q, v)
690690
}
691691

692692
pub fn exec_update(&mut self, u: UpdateStatement) -> DBResult<usize> {
693693
let (q, v) = u.build_rusqlite(SqliteQueryBuilder);
694-
debug!(self.log, "query: {q}"; "sql" => true);
694+
trace!(self.log, "query: {q}"; "sql" => true);
695695
self.exec(q, v)
696696
}
697697

698698
pub fn exec_insert(&mut self, i: InsertStatement) -> DBResult<usize> {
699699
let (q, v) = i.build_rusqlite(SqliteQueryBuilder);
700-
debug!(self.log, "query: {q}"; "sql" => true);
700+
trace!(self.log, "query: {q}"; "sql" => true);
701701
self.exec(q, v)
702702
}
703703

0 commit comments

Comments
 (0)