Factor out logger.
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
use log::{set_logger_raw, Log, LogLevelFilter, LogMetadata, LogRecord};
|
||||
|
||||
struct Logger;
|
||||
|
||||
impl Log for Logger {
|
||||
fn enabled(&self, _: &LogMetadata) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
fn log(&self, record: &LogRecord) {
|
||||
println!("{}: {}", record.level(), record.args());
|
||||
}
|
||||
}
|
||||
|
||||
pub fn init_logger() {
|
||||
unsafe {
|
||||
set_logger_raw(|max_log_level| {
|
||||
max_log_level.set(LogLevelFilter::Trace);
|
||||
&Logger
|
||||
}).expect("Can't initialize logger");
|
||||
}
|
||||
}
|
||||
+3
-20
@@ -17,30 +17,12 @@ use std::rc::Rc;
|
||||
mod error;
|
||||
mod device;
|
||||
mod scheme;
|
||||
|
||||
struct SimpleLogger;
|
||||
|
||||
impl log::Log for SimpleLogger {
|
||||
fn enabled(&self, _metadata: &log::LogMetadata) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
fn log(&self, record: &log::LogRecord) {
|
||||
if self.enabled(record.metadata()) {
|
||||
println!("{} : {}", record.level(), record.args());
|
||||
}
|
||||
}
|
||||
}
|
||||
mod logger;
|
||||
|
||||
fn run() -> Result<()> {
|
||||
use syscall::flag::*;
|
||||
|
||||
unsafe {
|
||||
log::set_logger_raw(|max_log_level| {
|
||||
max_log_level.set(log::LogLevelFilter::Trace);
|
||||
&SimpleLogger
|
||||
}).expect("Can't initialize logger");
|
||||
}
|
||||
logger::init_logger();
|
||||
|
||||
// if unsafe { syscall::clone(0).unwrap() } != 0 {
|
||||
// return Ok(());
|
||||
@@ -73,6 +55,7 @@ fn run() -> Result<()> {
|
||||
File::from_raw_fd(udp_fd),
|
||||
)
|
||||
};
|
||||
|
||||
let smolnetd = Rc::new(RefCell::new(
|
||||
Smolnetd::new(network_file, ip_file, udp_file, time_file),
|
||||
));
|
||||
|
||||
Reference in New Issue
Block a user