2024-05-19 22:38:21 +08:00
|
|
|
import logging
|
|
|
|
|
from datetime import datetime, timezone, timedelta
|
|
|
|
|
|
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
logger.setLevel(logging.DEBUG)
|
|
|
|
|
|
|
|
|
|
|
2026-05-06 09:23:26 +08:00
|
|
|
# 自定义日志格式器:统一输出北京时间,方便容器日志排查
|
2024-05-19 22:38:21 +08:00
|
|
|
class CustomFormatter(logging.Formatter):
|
2026-05-06 09:23:26 +08:00
|
|
|
# 格式化日志记录并注入北京时间字段
|
2024-05-19 22:38:21 +08:00
|
|
|
def format(self, record):
|
|
|
|
|
desired_timezone = timezone(timedelta(hours=8))
|
|
|
|
|
current_time = datetime.now(desired_timezone).strftime('%Y-%m-%d %H:%M:%S')
|
|
|
|
|
record.customtime = current_time
|
|
|
|
|
return super().format(record)
|
|
|
|
|
|
|
|
|
|
|
2026-05-06 09:23:26 +08:00
|
|
|
# 标准输出日志处理器:让Docker日志直接显示控制器运行状态
|
2024-05-19 22:38:21 +08:00
|
|
|
stream_handler = logging.StreamHandler()
|
|
|
|
|
stream_handler.setFormatter(CustomFormatter(' %(customtime)s [%(levelname)s] %(message)s'))
|
|
|
|
|
logger.addHandler(stream_handler)
|