refactor(module): 重构日志读取兜底机制

This commit is contained in:
DLmaster361
2025-07-19 10:27:19 +08:00
parent fd72d72692
commit 8a109e34f8
2 changed files with 29 additions and 48 deletions

View File

@@ -1181,12 +1181,16 @@ class MaaManager(QObject):
def refresh_maa_log(self) -> None: def refresh_maa_log(self) -> None:
"""刷新MAA日志""" """刷新MAA日志"""
if self.maa_log_path.exists():
with self.maa_log_path.open(mode="r", encoding="utf-8") as f:
logger.debug( logger.debug(
f"刷新MAA日志{self.maa_log_path}", module=f"MAA调度器-{self.name}" f"刷新MAA日志{self.maa_log_path}", module=f"MAA调度器-{self.name}"
) )
else:
with self.maa_log_path.open(mode="r", encoding="utf-8") as f: logger.warning(
pass f"MAA日志文件不存在{self.maa_log_path}",
module=f"MAA调度器-{self.name}",
)
# 一分钟内未执行日志变化检查,强制检查一次 # 一分钟内未执行日志变化检查,强制检查一次
if datetime.now() - self.last_check_time > timedelta(minutes=1): if datetime.now() - self.last_check_time > timedelta(minutes=1):
@@ -1199,10 +1203,9 @@ class MaaManager(QObject):
self.last_check_time = datetime.now() self.last_check_time = datetime.now()
# 获取日志 # 获取日志
if self.maa_log_path.exists():
self.maa_logs = [] self.maa_logs = []
if_log_start = False if_log_start = False
try:
with self.maa_log_path.open(mode="r", encoding="utf-8") as f: with self.maa_log_path.open(mode="r", encoding="utf-8") as f:
for entry in f: for entry in f:
if not if_log_start: if not if_log_start:
@@ -1217,19 +1220,11 @@ class MaaManager(QObject):
pass pass
else: else:
self.maa_logs.append(entry) self.maa_logs.append(entry)
except FileNotFoundError: else:
logger.error( logger.warning(
f"MAA日志文件不存在{self.maa_log_path}", f"MAA日志文件不存在{self.maa_log_path}",
module=f"MAA调度器-{self.name}", module=f"MAA调度器-{self.name}",
) )
self.update_log_text.emit("MAA日志文件不存在")
return None
except Exception as e:
logger.exception(
f"读取MAA日志文件时出现异常{e}",
module=f"MAA调度器-{self.name}",
)
self.update_log_text.emit(f"读取MAA日志文件时出现异常{e}")
return None return None
log = "".join(self.maa_logs) log = "".join(self.maa_logs)

View File

@@ -699,22 +699,17 @@ class GeneralManager(QObject):
def refresh_log(self) -> None: def refresh_log(self) -> None:
"""刷新脚本日志""" """刷新脚本日志"""
if self.script_log_path.exists():
with self.script_log_path.open(mode="r", encoding="utf-8") as f:
logger.debug( logger.debug(
f"刷新通用脚本日志:{self.script_log_path}", f"刷新通用脚本日志:{self.script_log_path}",
module=f"通用调度器-{self.name}", module=f"通用调度器-{self.name}",
) )
else:
try: logger.warning(
with self.script_log_path.open(mode="r", encoding="utf-8") as f: f"通用脚本日志文件不存在:{self.script_log_path}",
pass
except FileNotFoundError:
logger.error(
f"脚本日志文件不存在:{self.script_log_path}",
module=f"通用调度器-{self.name}", module=f"通用调度器-{self.name}",
) )
except Exception as e:
logger.exception(f"刷新脚本日志失败:{e}", module=f"通用调度器-{self.name}")
# 一分钟内未执行日志变化检查,强制检查一次 # 一分钟内未执行日志变化检查,强制检查一次
if (datetime.now() - self.last_check_time).total_seconds() > 60: if (datetime.now() - self.last_check_time).total_seconds() > 60:
@@ -755,10 +750,9 @@ class GeneralManager(QObject):
self.last_check_time = datetime.now() self.last_check_time = datetime.now()
# 获取日志 # 获取日志
if self.script_log_path.exists():
self.script_logs = [] self.script_logs = []
if_log_start = False if_log_start = False
try:
with self.script_log_path.open(mode="r", encoding="utf-8") as f: with self.script_log_path.open(mode="r", encoding="utf-8") as f:
for entry in f: for entry in f:
if not if_log_start: if not if_log_start:
@@ -776,19 +770,11 @@ class GeneralManager(QObject):
pass pass
else: else:
self.script_logs.append(entry) self.script_logs.append(entry)
else:
except FileNotFoundError: logger.warning(
logger.error( f"通用脚本日志文件不存在:{self.script_log_path}",
f"脚本日志文件不存在:{self.script_log_path}",
module=f"通用调度器-{self.name}", module=f"通用调度器-{self.name}",
) )
self.update_log_text.emit("脚本日志文件不存在")
return None
except Exception as e:
logger.exception(
f"读取脚本日志文件失败:{e}", module=f"通用调度器-{self.name}"
)
self.update_log_text.emit(f"读取脚本日志文件失败:{e}")
return None return None
log = "".join(self.script_logs) log = "".join(self.script_logs)