mirror of
https://github.com/Nezumi-2711/astrbot_plugin_qq_group_daily_analysis.git
synced 2026-09-22 13:38:43 +00:00
fix(增量分析): 增量分析任务的生命周期检查,与定时分析保持一致
This commit is contained in:
@@ -375,6 +375,9 @@ class AutoScheduler:
|
|||||||
|
|
||||||
analysis_tasks = []
|
analysis_tasks = []
|
||||||
for gid, pid in target_list:
|
for gid, pid in target_list:
|
||||||
|
if self._terminating:
|
||||||
|
logger.info("检测到插件正在停止,取消后续分析任务创建")
|
||||||
|
break
|
||||||
task = asyncio.create_task(
|
task = asyncio.create_task(
|
||||||
throttled_analysis(gid, pid),
|
throttled_analysis(gid, pid),
|
||||||
name=f"analysis_group_{gid}",
|
name=f"analysis_group_{gid}",
|
||||||
@@ -535,6 +538,9 @@ class AutoScheduler:
|
|||||||
|
|
||||||
analysis_tasks = []
|
analysis_tasks = []
|
||||||
for idx, (gid, pid) in enumerate(target_list):
|
for idx, (gid, pid) in enumerate(target_list):
|
||||||
|
if self._terminating:
|
||||||
|
logger.info("检测到插件正在停止,取消后续增量分析任务创建")
|
||||||
|
break
|
||||||
task = asyncio.create_task(
|
task = asyncio.create_task(
|
||||||
staggered_incremental(idx, gid, pid),
|
staggered_incremental(idx, gid, pid),
|
||||||
name=f"incremental_group_{gid}",
|
name=f"incremental_group_{gid}",
|
||||||
@@ -649,6 +655,8 @@ class AutoScheduler:
|
|||||||
|
|
||||||
async def _run_incremental_final_report(self):
|
async def _run_incremental_final_report(self):
|
||||||
"""基于当天增量累积数据生成并发送最终报告"""
|
"""基于当天增量累积数据生成并发送最终报告"""
|
||||||
|
if self._terminating:
|
||||||
|
return
|
||||||
try:
|
try:
|
||||||
logger.info("开始生成增量最终报告(交错并发模式)")
|
logger.info("开始生成增量最终报告(交错并发模式)")
|
||||||
|
|
||||||
@@ -680,6 +688,9 @@ class AutoScheduler:
|
|||||||
|
|
||||||
report_tasks = []
|
report_tasks = []
|
||||||
for idx, (gid, pid) in enumerate(target_list):
|
for idx, (gid, pid) in enumerate(target_list):
|
||||||
|
if self._terminating:
|
||||||
|
logger.info("检测到插件正在停止,取消后续最终报告任务创建")
|
||||||
|
break
|
||||||
task = asyncio.create_task(
|
task = asyncio.create_task(
|
||||||
staggered_final_report(idx, gid, pid),
|
staggered_final_report(idx, gid, pid),
|
||||||
name=f"final_report_group_{gid}",
|
name=f"final_report_group_{gid}",
|
||||||
@@ -744,6 +755,9 @@ class AutoScheduler:
|
|||||||
trace_id = TraceContext.generate(prefix="report", group_name=group_name)
|
trace_id = TraceContext.generate(prefix="report", group_name=group_name)
|
||||||
TraceContext.set(trace_id)
|
TraceContext.set(trace_id)
|
||||||
|
|
||||||
|
if self._terminating:
|
||||||
|
return
|
||||||
|
|
||||||
logger.info(
|
logger.info(
|
||||||
f"开始为群 {group_id} 生成增量最终报告 "
|
f"开始为群 {group_id} 生成增量最终报告 "
|
||||||
f"(Platform: {target_platform_id or 'Auto'})"
|
f"(Platform: {target_platform_id or 'Auto'})"
|
||||||
|
|||||||
Reference in New Issue
Block a user