seek: douban group
All checks were successful
Gitea Actions Demo / deploy (push) Successful in 33s

This commit is contained in:
konjacpotato
2026-02-15 12:37:48 +08:00
parent 72b117b57c
commit 51d1c403f5
10 changed files with 131 additions and 18 deletions

View File

@ -6,7 +6,7 @@ from apscheduler.schedulers.blocking import BlockingScheduler
from config import config
from database.database import get_session
from database.tscheduler.crud import get_tasks_by_executor
from log.log_manager import log
from utils import logger
"""
这是一个特殊的任务,负责管理任务,命名为管理者任务。
@ -24,10 +24,10 @@ def log_task_execution(task_name: str, start_time: float, end_time: float = None
start_time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(start_time))
end_time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(end_time))
if end_time is None:
log(f"{task_name} start execute at {start_time_str}")
logger.info(f"{task_name} start execute at {start_time_str}")
else:
elapsed_time = end_time - start_time
log(f"{task_name} end execute at {end_time_str}, use time {elapsed_time:.2f} seconds")
logger.info(f"{task_name} end execute at {end_time_str}, use time {elapsed_time:.2f} seconds")
def execute_task(task: callable):
@ -66,7 +66,7 @@ def load_tasks(scheduler: BlockingScheduler):
replace_existing=True,
misfire_grace_time=interval_seconds
)
log(f"Task {task.task_name} added with interval {interval_seconds} seconds")
logger.info(f"Task {task.task_name} added with interval {interval_seconds} seconds")
elif trigger == "cron":
# 解析 cron 表达式的字段
fields = task.cron_expression.split()
@ -90,7 +90,7 @@ def load_tasks(scheduler: BlockingScheduler):
id=str(task_id),
replace_existing=True
)
log(f"Task {task.task_name} added with cron {task.cron_expression}")
logger.info(f"Task {task.task_name} added with cron {task.cron_expression}")
elif trigger == "date":
scheduler.add_job(
task_function,
@ -99,13 +99,13 @@ def load_tasks(scheduler: BlockingScheduler):
id=str(task_id),
replace_existing=True
)
log(f"Task {task.task_name} added with date {task.execution_date}")
logger.info(f"Task {task.task_name} added with date {task.execution_date}")
else:
log(f"Task Invalid trigger type: {trigger}")
logger.warning(f"Task Invalid trigger type: {trigger}")
else:
log(f"Task {task.task_name} already exists......")
logger.info(f"Task {task.task_name} already exists......")
run_time = job.next_run_time - job.trigger.start_date
log(f"Task {task.task_name} already exists, run time is {run_time}")
logger.info(f"Task {task.task_name} already exists, run time is {run_time}")
# 管理者任务
def manager_task(scheduler: BlockingScheduler):