mirror of
https://github.com/launchbadge/sqlx.git
synced 2026-04-09 03:36:01 +00:00
feat: add an optional query logger (using log)
This commit is contained in:
@@ -2,6 +2,7 @@ use crate::common::StatementCache;
|
||||
use crate::describe::Describe;
|
||||
use crate::error::Error;
|
||||
use crate::executor::{Execute, Executor};
|
||||
use crate::logger::QueryLogger;
|
||||
use crate::sqlite::connection::describe::describe;
|
||||
use crate::sqlite::statement::{StatementHandle, VirtualStatement};
|
||||
use crate::sqlite::{
|
||||
@@ -71,6 +72,7 @@ impl<'c> Executor<'c> for &'c mut SqliteConnection {
|
||||
E: Execute<'q, Self::Database>,
|
||||
{
|
||||
let sql = query.sql();
|
||||
let mut logger = QueryLogger::new(sql);
|
||||
let arguments = query.take_arguments();
|
||||
let persistent = query.persistent() && arguments.is_some();
|
||||
|
||||
@@ -135,6 +137,8 @@ impl<'c> Executor<'c> for &'c mut SqliteConnection {
|
||||
let v = Either::Right(row);
|
||||
*last_row_values = Some(weak_values_ref);
|
||||
|
||||
logger.increment_rows();
|
||||
|
||||
r#yield!(v);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user