1
0
Fork 0
mirror of https://github.com/doukutsu-rs/doukutsu-rs synced 2025-03-25 11:29:30 +00:00

Revert back to simple_logger

This commit is contained in:
Alula 2024-08-28 18:49:37 +02:00
parent 024d5ec78f
commit a3a13ffb07
No known key found for this signature in database
GPG key ID: 3E00485503A1D8BA
2 changed files with 7 additions and 58 deletions

View file

@ -65,7 +65,6 @@ directories = "3"
discord-rich-presence = { version = "0.2", optional = true }
downcast = "0.11"
encoding_rs = "0.8.33"
fern = "0.6.2"
glutin = { version = "0.32.0", optional = true }
imgui = { git = "https://github.com/imgui-rs/imgui-rs.git", rev = "67f7f11363e62f09aa0e1288a17800e505860486" }
image = { version = "0.24", default-features = false, features = ["png", "bmp"] }
@ -73,7 +72,7 @@ itertools = "0.13.0"
include-flate = "0.3.0"
lazy_static = "1.4"
lewton = { version = "0.10", optional = true }
log = "0.4"
log = { version = "0.4", features = ["release_max_level_info"] }
num-derive = "0.4"
num-traits = "0.2"
open = "3.2"
@ -86,6 +85,7 @@ serde = { version = "1", features = ["derive"] }
serde_derive = "1"
serde_cbor = { version = "0.11", optional = true }
serde_json = "1.0"
simple_logger = { version = "5.0.0", features = ["colors", "threads"] }
strum = "0.24"
strum_macros = "0.24"
# remove and replace when extract_if is in stable

View file

@ -1,7 +1,6 @@
use std::backtrace::Backtrace;
use std::cell::RefCell;
use std::panic::PanicInfo;
use std::path::PathBuf;
use std::sync::Mutex;
use std::time::{Duration, Instant};
@ -238,62 +237,12 @@ impl Game {
}
}
// For the most part this is just a copy-paste of the code from FilesystemContainer because it logs
// some messages during init, but the default logger cannot be replaced with another
// one or deinited(so we can't create the console-only logger and replace it by the
// console&file logger after FilesystemContainer has been initialized)
fn get_logs_dir() -> GameResult<PathBuf> {
let mut logs_dir: PathBuf;
#[cfg(target_os = "android")]
{
logs_dir = PathBuf::from(ndk_glue::native_activity().internal_data_path().to_string_lossy().to_string());
}
#[cfg(target_os = "horizon")]
{
logs_dir = PathBuf::from("sdmc:/switch/doukutsu-rs");
}
#[cfg(not(any(target_os = "android", target_os = "horizon")))]
{
let project_dirs = match directories::ProjectDirs::from("", "", "doukutsu-rs") {
Some(dirs) => dirs,
None => {
use crate::framework::error::GameError;
return Err(GameError::FilesystemError(String::from(
"No valid home directory path could be retrieved.",
)));
}
};
logs_dir = project_dirs.data_local_dir().to_path_buf();
}
logs_dir.push("logs");
Ok(logs_dir)
}
fn init_logger() -> GameResult {
let logs_dir = get_logs_dir()?;
let _ = std::fs::create_dir_all(&logs_dir);
let mut dispatcher = fern::Dispatch::new()
.format(|out, message, record| {
out.finish(format_args!("{} [{}] {}", record.level(), record.module_path().unwrap().to_owned(), message))
})
.level(log::LevelFilter::Debug)
.chain(fern::Dispatch::new().chain(std::io::stderr()));
let date = chrono::Utc::now();
let mut file = logs_dir.clone();
file.push(format!("log_{}", date.format("%Y-%m-%d")));
file.set_extension("txt");
dispatcher =
dispatcher.chain(fern::Dispatch::new().level(log::LevelFilter::Info).chain(fern::log_file(file).unwrap()));
dispatcher.apply()?;
let _ = simple_logger::SimpleLogger::new()
.without_timestamps()
.with_colors(true)
.with_level(log::Level::Info.to_level_filter())
.init();
Ok(())
}