From f84022b8cff0bbf3a7d1f9ffe08f4303899321d0 Mon Sep 17 00:00:00 2001 From: Nahuel Lofeudo Date: Tue, 30 Jun 2026 05:19:31 +0100 Subject: [PATCH] Make log verbosity configurable. --- src/main.rs | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/main.rs b/src/main.rs index 8423616..5d14ffb 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,10 +1,10 @@ mod gtfs; mod renderer; mod config; -use std::{ops::Add, process, thread::Builder, time::SystemTime}; +use std::{env::{self, args}, ops::Add, process, thread::Builder, time::SystemTime}; use chrono::{DateTime, Duration, Local, NaiveTime}; -use log::{Level, Metadata, Record, error, info}; -use sdl3::event::Event; +use log::{Level, Log, Metadata, Record, error, info}; +use sdl3::{event::Event, video::FullscreenType::True}; use crate::{config::load_config, gtfs::structs::{Arrival, Gtfs}, renderer::structs::{DisplayData, DisplayEntry, Screen}}; const NUM_ARRIVALS: usize = 4; @@ -54,12 +54,15 @@ fn refresh_schedule<'a>(gtfs: &'a Gtfs, screen : &mut Screen<'a>) -> Option = env::args().collect(); + // Initialize logger static MY_LOGGER: MyLogger = MyLogger; + struct MyLogger; impl log::Log for MyLogger { - fn enabled(&self, metadata: &Metadata) -> bool { - return metadata.level() < Level::Trace; + fn enabled(&self, metadata: &Metadata) -> bool { + return true; } fn log(&self, record: &Record) { @@ -76,7 +79,12 @@ fn main() { print!("Error setting up the main logger:{:#?}", logger.err()); process::exit(-1); } - log::set_max_level(log::LevelFilter::Trace); + + if args.contains(&String::from("--debug")) { + log::set_max_level(log::LevelFilter::Trace); + } else { + log::set_max_level(log::LevelFilter::Warn); + } let config_result = load_config(String::from("resources/dublinbus.yaml"));