mirror of https://github.com/rwf2/Rocket.git
parent
1a8574e491
commit
a16c66eae9
|
@ -188,6 +188,7 @@ mod deadpool_postgres {
|
|||
mod sqlx {
|
||||
use sqlx::ConnectOptions;
|
||||
use super::{Duration, Error, Config, Figment};
|
||||
use rocket::config::LogLevel;
|
||||
|
||||
type Options<D> = <<D as sqlx::Database>::Connection as sqlx::Connection>::Options;
|
||||
|
||||
|
@ -210,9 +211,16 @@ mod sqlx {
|
|||
async fn init(figment: &Figment) -> Result<Self, Self::Error> {
|
||||
let config = figment.extract::<Config>()?;
|
||||
let mut opts = config.url.parse::<Options<D>>().map_err(Error::Init)?;
|
||||
opts.disable_statement_logging();
|
||||
specialize(&mut opts, &config);
|
||||
|
||||
opts.disable_statement_logging();
|
||||
if let Ok(level) = figment.extract_inner::<LogLevel>(rocket::Config::LOG_LEVEL) {
|
||||
if !matches!(level, LogLevel::Normal | LogLevel::Off) {
|
||||
opts.log_statements(level.into())
|
||||
.log_slow_statements(level.into(), Duration::default());
|
||||
}
|
||||
}
|
||||
|
||||
sqlx::pool::PoolOptions::new()
|
||||
.max_connections(config.max_connections as u32)
|
||||
.connect_timeout(Duration::from_secs(config.connect_timeout))
|
||||
|
|
|
@ -79,7 +79,7 @@ impl log::Log for RocketLogger {
|
|||
let max = log::max_level();
|
||||
let from = |path| record.module_path().map_or(false, |m| m.starts_with(path));
|
||||
let debug_only = from("hyper") || from("rustls") || from("r2d2");
|
||||
if LogLevel::Debug.to_level_filter() > max && debug_only {
|
||||
if log::LevelFilter::from(LogLevel::Debug) > max && debug_only {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -153,7 +153,18 @@ pub(crate) fn init(config: &crate::Config) {
|
|||
Paint::disable();
|
||||
}
|
||||
|
||||
log::set_max_level(config.log_level.to_level_filter());
|
||||
log::set_max_level(config.log_level.into());
|
||||
}
|
||||
}
|
||||
|
||||
impl From<LogLevel> for log::LevelFilter {
|
||||
fn from(level: LogLevel) -> Self {
|
||||
match level {
|
||||
LogLevel::Critical => log::LevelFilter::Warn,
|
||||
LogLevel::Normal => log::LevelFilter::Info,
|
||||
LogLevel::Debug => log::LevelFilter::Trace,
|
||||
LogLevel::Off => log::LevelFilter::Off
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -166,15 +177,6 @@ impl LogLevel {
|
|||
LogLevel::Off => "off",
|
||||
}
|
||||
}
|
||||
|
||||
fn to_level_filter(self) -> log::LevelFilter {
|
||||
match self {
|
||||
LogLevel::Critical => log::LevelFilter::Warn,
|
||||
LogLevel::Normal => log::LevelFilter::Info,
|
||||
LogLevel::Debug => log::LevelFilter::Trace,
|
||||
LogLevel::Off => log::LevelFilter::Off
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl FromStr for LogLevel {
|
||||
|
|
Loading…
Reference in New Issue