简单搞了下logger

This commit is contained in:
Zihaoxu2008
2025-01-26 11:46:37 +08:00
parent 339d6fab82
commit 91624eec0f
5 changed files with 172 additions and 23 deletions

View File

@@ -1,4 +1,5 @@
use std::{fs::File, io::BufWriter};
use log::{info, warn, error};
use serde::{Deserialize, Serialize};
use std::io::BufReader;
@@ -27,26 +28,26 @@ impl Configuration {
let reader = BufReader::new(file);
match serde_json::from_reader::<_,Configuration>(reader) { // serde可以直接解析出实现了Deserialize trait的类型 就很不错
Ok(config) => {
println!("[CONFIG] Server IP: {}", config.server_ip);
println!("[CONFIG] Server Port: {}", config.server_port);
println!("[CONFIG] Username Prefix: {}", config.username_prefix);
println!("[CONFIG] Bot Count: {}", config.count);
println!("[CONFIG] Proxy URL: {}", config.proxy_url);
info!("Server IP: {}", config.server_ip);
info!("Server Port: {}", config.server_port);
info!("Username Prefix: {}", config.username_prefix);
info!("Bot Count: {}", config.count);
info!("Proxy URL: {}", config.proxy_url);
config
}
Err(error) => {
eprintln!("[MAIN/CONF] Error parsing config file: {}", error);
error!("Error parsing config file: {}", error);
Self::default()
}
}
}
Err(error) => {
eprintln!("[MAIN/CONF] Unable to read config file, will use default values: {}", error);
warn!("Unable to read config file, will use default values: {}", error);
let file = File::create_new(filename).unwrap();
let writer = BufWriter::new(file);
let mut serializer = serde_json::Serializer::pretty(writer);
Self::default().serialize(&mut serializer).unwrap();
eprintln!("[Main/CONF] A configure file with default values is created.");
warn!("A configure file with default values is created.");
Self::default()
}
}