
一句话承诺:最小可用配置,按大小/按时间轮转日志,附表与代码。

Handler | 场景 | 关键参数 |
|---|---|---|
RotatingFileHandler | 输出文件大小受限 | maxBytes, backupCount |
TimedRotatingFileHandler | 按天/小时轮转 | when, interval, backupCount |
import logging
from logging.handlers import RotatingFileHandler, TimedRotatingFileHandler
logger = logging.getLogger('app')
logger.setLevel(logging.INFO)
# 按大小轮转
h1 = RotatingFileHandler('app.log', maxBytes=5*1024*1024, backupCount=7)
# 按天轮转
h2 = TimedRotatingFileHandler('app-day.log', when='D', interval=1, backupCount=14)
fmt = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
h1.setFormatter(fmt); h2.setFormatter(fmt)
logger.addHandler(h1); logger.addHandler(h2)
logger.info('hello')Go 并发 Worker Pool:最小实现与坑(代码+图)。