refactor(logging): replace log_err! with structured logging_error! calls

refactor(cm-service): better error handling from Backend to Frontend
This commit is contained in:
Tunglies
2025-03-28 03:39:21 +08:00
parent 59caa22431
commit e8e16f7d57
18 changed files with 232 additions and 128 deletions

View File

@@ -5,21 +5,21 @@ use tauri::{Listener, Manager};
use crate::{
config::Config,
core::{handle, timer::Timer},
log_err, AppHandleManager,
log_err, logging,
utils::logging::Type,
AppHandleManager,
};
const LIGHT_WEIGHT_TASK_UID: &str = "light_weight_task";
pub fn enable_auto_light_weight_mode() {
println!("[lightweight_mode] 开启自动轻量模式");
log::info!(target: "app", "[lightweight_mode] 开启自动轻量模式");
logging!(info, Type::Lightweight, True, "开启自动轻量模式");
setup_window_close_listener();
setup_webview_focus_listener();
}
pub fn disable_auto_light_weight_mode() {
println!("[lightweight_mode] 关闭自动轻量模式");
log::info!(target: "app", "[lightweight_mode] 关闭自动轻量模式");
logging!(info, Type::Lightweight, True, "关闭自动轻量模式");
let _ = cancel_light_weight_timer();
cancel_window_close_listener();
}
@@ -34,8 +34,7 @@ pub fn entry_lightweight_mode() {
}
#[cfg(target_os = "macos")]
AppHandleManager::global().set_activation_policy_accessory();
println!("[lightweight_mode] 轻量模式已开启");
log::info!(target: "app", "[lightweight_mode] 轻量模式已开启");
logging!(info, Type::Lightweight, True, "轻量模式已开启");
}
let _ = cancel_light_weight_timer();
}
@@ -44,8 +43,12 @@ fn setup_window_close_listener() -> u32 {
if let Some(window) = handle::Handle::global().get_window() {
let handler = window.listen("tauri://close-requested", move |_event| {
let _ = setup_light_weight_timer();
println!("[lightweight_mode] 监听到关闭请求,开始轻量模式计时");
log::info!(target: "app", "[lightweight_mode] 监听到关闭请求,开始轻量模式计时");
logging!(
info,
Type::Lightweight,
True,
"监听到关闭请求,开始轻量模式计时"
);
});
return handler;
}
@@ -56,8 +59,12 @@ fn setup_webview_focus_listener() -> u32 {
if let Some(window) = handle::Handle::global().get_window() {
let handler = window.listen("tauri://focus", move |_event| {
log_err!(cancel_light_weight_timer());
println!("[lightweight_mode] 监听到窗口获得焦点,取消轻量模式计时");
log::info!(target: "app", "[lightweight_mode] 监听到窗口获得焦点,取消轻量模式计时");
logging!(
info,
Type::Lightweight,
True,
"监听到窗口获得焦点,取消轻量模式计时"
);
});
return handler;
}
@@ -67,8 +74,7 @@ fn setup_webview_focus_listener() -> u32 {
fn cancel_window_close_listener() {
if let Some(window) = handle::Handle::global().get_window() {
window.unlisten(setup_window_close_listener());
println!("[lightweight_mode] 取消了窗口关闭监听");
log::info!(target: "app", "[lightweight_mode] 取消了窗口关闭监听");
logging!(info, Type::Lightweight, True, "取消了窗口关闭监听");
}
}
@@ -92,17 +98,14 @@ fn setup_light_weight_timer() -> Result<()> {
.set_maximum_parallel_runnable_num(1)
.set_frequency_once_by_minutes(once_by_minutes)
.spawn_async_routine(move || async move {
println!("[lightweight_mode] 计时器到期,开始进入轻量模式");
log::info!(target: "app",
"[lightweight_mode] 计时器到期,开始进入轻量模式"
);
logging!(info, Type::Timer, True, "计时器到期,开始进入轻量模式");
entry_lightweight_mode();
})
.context("failed to create light weight timer task")?;
.context("failed to create timer task")?;
delay_timer
.add_task(task)
.context("failed to add light weight timer task")?;
.context("failed to add timer task")?;
let timer_task = crate::core::timer::TimerTask {
task_id,
@@ -112,12 +115,11 @@ fn setup_light_weight_timer() -> Result<()> {
timer_map.insert(LIGHT_WEIGHT_TASK_UID.to_string(), timer_task);
println!(
"[lightweight_mode] 轻量模式计时器已设置,{} 分钟后将自动进入轻量模式",
once_by_minutes
);
log::info!(target: "app",
"[lightweight_mode] 轻量模式计时器已设置,{} 分钟后将自动进入轻量模式",
logging!(
info,
Type::Timer,
True,
"计时器已设置,{} 分钟后将自动进入轻量模式",
once_by_minutes
);
@@ -131,9 +133,8 @@ fn cancel_light_weight_timer() -> Result<()> {
if let Some(task) = timer_map.remove(LIGHT_WEIGHT_TASK_UID) {
delay_timer
.remove_task(task.task_id)
.context("failed to remove light weight timer task")?;
println!("[lightweight_mode] 轻量模式计时器已取消");
log::info!(target: "app", "[lightweight_mode] 轻量模式计时器已取消");
.context("failed to remove timer task")?;
logging!(info, Type::Timer, True, "计时器已取消");
}
Ok(())