python 多进程下实现日志记录按时间分割
原理:自定义日志handler继承TimedRotatingFileHandler,并重写computeRollover与doRollover函数。其中重写computeRollover是为了能按整分钟/小时/天来分割日志,如按天分割,2018-04-10 00:00:00~2018-04-11 00:00:00,是一个半闭半开区间,且不是原意的:从日志创建时间或当前时间开始,到明天的这个时候。
代码如下:
#!/usr/bin/env python
# encoding: utf-8
"""自定义日志处理类"""
import os
import time
from logging.handlers import TimedRotatingFileHandler
class MyLoggingHandler(TimedRotatingFileHandler):
def __init__(self, filename, when='h', interval=1, backupCount=0, encoding=None, delay=False, utc=False, atTime=None):</