Satellite tracking TUI using ratatui
at main 1.1 kB view raw
1 2use std::io::Error; 3 4use tracing_error::ErrorLayer; 5use tracing_subscriber::{self, layer::SubscriberExt, util::SubscriberInitExt}; 6 7pub fn initialize_logging() -> Result<(),Error> { 8 let log_file = std::fs::File::create("log.log")?; 9 let file_subscriber = tracing_subscriber::fmt::layer() 10 .with_file(true) 11 .with_line_number(true) 12 .with_writer(log_file) 13 .with_target(false) 14 .with_ansi(false); 15 tracing_subscriber::registry().with(file_subscriber).with(ErrorLayer::default()).init(); 16 Ok(()) 17} 18 19#[macro_export] 20macro_rules! trace_dbg { 21 (target: $target:expr, level: $level:expr, $ex:expr) => {{ 22 match $ex { 23 value => { 24 tracing::event!(target: $target, $level, ?value, stringify!($ex)); 25 value 26 } 27 } 28 }}; 29 (level: $level:expr, $ex:expr) => { 30 trace_dbg!(target: module_path!(), level: $level, $ex) 31 }; 32 (target: $target:expr, $ex:expr) => { 33 trace_dbg!(target: $target, level: tracing::Level::DEBUG, $ex) 34 }; 35 ($ex:expr) => { 36 trace_dbg!(level: tracing::Level::DEBUG, $ex) 37 }; 38}