From f48d5b6ccc8b239bee7c1dabfec213a5a795d145 Mon Sep 17 00:00:00 2001 From: Jean SIMARD Date: Wed, 16 Jun 2021 09:53:27 +0200 Subject: [PATCH 1/2] [feature] convert 'gtfs2ntfs' to tracing --- gtfs2ntfs/Cargo.toml | 9 +++------ gtfs2ntfs/src/main.rs | 24 ++---------------------- 2 files changed, 5 insertions(+), 28 deletions(-) diff --git a/gtfs2ntfs/Cargo.toml b/gtfs2ntfs/Cargo.toml index 1be7acf65..42bd13002 100644 --- a/gtfs2ntfs/Cargo.toml +++ b/gtfs2ntfs/Cargo.toml @@ -15,12 +15,9 @@ keywords = ["gtfs", "ntfs", "transit"] chrono = "0.4" failure = "0.1" log = "0.4" -slog = "2.5" -slog-async = "2.3" -slog-envlogger = "2.1" -slog-scope = "4.1" -slog-stdlog = "4.0" -slog-term = "2.4" structopt = "0.3" +tracing = { version = "0.1", features = ["log", "release_max_level_info"] } +tracing-log = "0.1" +tracing-subscriber = "0.2" transit_model = { path = "../" } lazy_static = "1" diff --git a/gtfs2ntfs/src/main.rs b/gtfs2ntfs/src/main.rs index 686028a50..15f5d8559 100644 --- a/gtfs2ntfs/src/main.rs +++ b/gtfs2ntfs/src/main.rs @@ -16,8 +16,6 @@ use chrono::{DateTime, FixedOffset}; use log::info; -use slog::{slog_o, Drain}; -use slog_async::OverflowStrategy; use std::path::PathBuf; use structopt::StructOpt; use transit_model::{read_utils, transfers::generates_transfers, PrefixConfiguration, Result}; @@ -94,26 +92,9 @@ struct Opt { waiting_time: u32, } -fn init_logger() -> slog_scope::GlobalLoggerGuard { - let decorator = slog_term::TermDecorator::new().stdout().build(); - let drain = slog_term::CompactFormat::new(decorator).build().fuse(); - let mut builder = slog_envlogger::LogBuilder::new(drain).filter(None, slog::FilterLevel::Info); - if let Ok(s) = std::env::var("RUST_LOG") { - builder = builder.parse(&s); - } - let drain = slog_async::Async::new(builder.build()) - .chan_size(256) // Double the default size - .overflow_strategy(OverflowStrategy::Block) - .build() - .fuse(); - let logger = slog::Logger::root(drain, slog_o!()); - - let scope_guard = slog_scope::set_global_logger(logger); - slog_stdlog::init().unwrap(); - scope_guard -} - fn run(opt: Opt) -> Result<()> { + tracing_subscriber::fmt::init(); + info!("Launching gtfs2ntfs..."); let (contributor, dataset, feed_infos) = read_utils::read_config(opt.config)?; @@ -149,7 +130,6 @@ fn run(opt: Opt) -> Result<()> { } fn main() { - let _log_guard = init_logger(); if let Err(err) = run(Opt::from_args()) { for cause in err.iter_chain() { eprintln!("{}", cause); From 310e4d88ce9173e7bf162b0fdf12dfadf45d2024 Mon Sep 17 00:00:00 2001 From: Jean SIMARD Date: Wed, 16 Jun 2021 11:23:18 +0200 Subject: [PATCH 2/2] [feature] use layers for tracing subscribers --- gtfs2ntfs/src/main.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gtfs2ntfs/src/main.rs b/gtfs2ntfs/src/main.rs index 15f5d8559..933e1489b 100644 --- a/gtfs2ntfs/src/main.rs +++ b/gtfs2ntfs/src/main.rs @@ -18,6 +18,7 @@ use chrono::{DateTime, FixedOffset}; use log::info; use std::path::PathBuf; use structopt::StructOpt; +use tracing_subscriber::{layer::SubscriberExt as _, util::SubscriberInitExt as _}; use transit_model::{read_utils, transfers::generates_transfers, PrefixConfiguration, Result}; lazy_static::lazy_static! { @@ -93,8 +94,6 @@ struct Opt { } fn run(opt: Opt) -> Result<()> { - tracing_subscriber::fmt::init(); - info!("Launching gtfs2ntfs..."); let (contributor, dataset, feed_infos) = read_utils::read_config(opt.config)?; @@ -130,6 +129,10 @@ fn run(opt: Opt) -> Result<()> { } fn main() { + tracing_subscriber::registry() + .with(tracing_subscriber::fmt::layer()) + .with(tracing_subscriber::filter::EnvFilter::from_default_env()) + .init(); if let Err(err) = run(Opt::from_args()) { for cause in err.iter_chain() { eprintln!("{}", cause);