Add: default logging filter to suppress geoip logging
This commit is contained in:
@@ -3,6 +3,7 @@ use std::path::{Path, PathBuf};
|
||||
use time::format_description::well_known::Rfc3339;
|
||||
use time::OffsetDateTime;
|
||||
use tracing_subscriber::prelude::*;
|
||||
use tracing_subscriber::EnvFilter;
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct CommandEnvelope<T> {
|
||||
@@ -227,9 +228,10 @@ fn init_logging_text(
|
||||
log_file: Option<&PathBuf>,
|
||||
) -> Result<LoggingHandle, Box<dyn std::error::Error>> {
|
||||
let (writer, guard) = logging_writer(log_file)?;
|
||||
let filter = build_log_filter(level_filter);
|
||||
let layer = tracing_subscriber::fmt::layer()
|
||||
.with_writer(writer)
|
||||
.with_filter(level_filter);
|
||||
.with_filter(filter);
|
||||
tracing_subscriber::registry().with(layer).init();
|
||||
Ok(LoggingHandle { _guard: guard })
|
||||
}
|
||||
@@ -239,14 +241,27 @@ fn init_logging_json(
|
||||
log_file: Option<&PathBuf>,
|
||||
) -> Result<LoggingHandle, Box<dyn std::error::Error>> {
|
||||
let (writer, guard) = logging_writer(log_file)?;
|
||||
let filter = build_log_filter(level_filter);
|
||||
let layer = tracing_subscriber::fmt::layer()
|
||||
.with_writer(writer)
|
||||
.json()
|
||||
.with_filter(level_filter);
|
||||
.with_filter(filter);
|
||||
tracing_subscriber::registry().with(layer).init();
|
||||
Ok(LoggingHandle { _guard: guard })
|
||||
}
|
||||
|
||||
fn build_log_filter(level_filter: tracing_subscriber::filter::LevelFilter) -> EnvFilter {
|
||||
if let Ok(filter) = EnvFilter::try_from_env("NETTOOL_LOG_FILTER") {
|
||||
return filter;
|
||||
}
|
||||
if let Ok(filter) = EnvFilter::try_from_default_env() {
|
||||
return filter;
|
||||
}
|
||||
EnvFilter::default()
|
||||
.add_directive(level_filter.into())
|
||||
.add_directive("maxminddb::decoder=off".parse().unwrap())
|
||||
}
|
||||
|
||||
fn logging_writer(
|
||||
log_file: Option<&PathBuf>,
|
||||
) -> Result<
|
||||
|
||||
Reference in New Issue
Block a user