import os import subprocess import time import re from datetime import datetime, timedelta import sys os.chdir('/www/server/panel') if 'class/' not in sys.path: sys.path.insert(0, 'class/') import public try: import croniter except: public.ExecShell("btpip install croniter") # 用于记录任务失败次数和上次执行时间的文件路径 task_info_file = '{}/data/task_info.txt'.format(public.get_panel_path()) # 正则表达式用于匹配 syslog 和 ISO 8601 格式 syslog_regex = re.compile(r'^(?P\w{3})\s+(?P\d{1,2})\s+(?P