多台控制

This commit is contained in:
ray
2025-10-30 23:39:27 +08:00
parent 069613fe09
commit 7623e22e5c
9 changed files with 350 additions and 190 deletions

26
utils/logger.py Normal file
View File

@@ -0,0 +1,26 @@
import logging
import sys
import time
from typing import Dict
# 基础logger配置控制台输出
_logger = logging.getLogger("huojv")
if not _logger.handlers:
_logger.setLevel(logging.INFO)
handler = logging.StreamHandler(sys.stdout)
fmt = logging.Formatter(fmt='[%(asctime)s] %(levelname)s %(message)s', datefmt='%H:%M:%S')
handler.setFormatter(fmt)
_logger.addHandler(handler)
# 简单的节流打印同一个key在interval秒内只打印一次
_last_log_times: Dict[str, float] = {}
def throttle(key: str, interval_sec: float, level: int, msg: str):
now = time.time()
last = _last_log_times.get(key, 0.0)
if now - last >= interval_sec:
_last_log_times[key] = now
_logger.log(level, msg)
# 对外暴露
logger = _logger