小编Beg*_* AC的帖子

为什么 Python RotatingFileHandler 的“maxBytes”不起作用

我正在尝试对logging模块的 RotatingFileHandler进行测试,如下所示:

from logging import getLogger, Formatter
from logging.handlers import RotatingFileHandler

MAX_LOG_SIZE = 2000

_null = lambda *s: None
LOG_FORMAT = '%(process)d [%(name)s %(asctime)s] %(levelname)s: %(message)s'

class Logger(object):
    __slots__ = '_Logger__logger'

    def __init__(self, name='main'):
        self.__logger = getLogger(name)
        if not self.__logger.handlers:
            self.add_handler(name)

    def add_handler(self, name):

        file_name = 'log.log'
        handler = RotatingFileHandler(file_name, 'a+', MAX_LOG_SIZE)
        handler.setFormatter(Formatter(LOG_FORMAT))
        self.__logger.addHandler(handler)
        self.__logger._file_name = file_name

    def ERROR(self, msg, *args):
        self.__logger.error(msg, *args, **{})

if __name__ == '__main__':
    logger = Logger()
    for i in range(1000):
        logger.ERROR('logger.content')
Run Code Online (Sandbox Code Playgroud)

但是,当 MAX_LOG_SIZE …

python logging

3
推荐指数
1
解决办法
2685
查看次数

标签 统计

logging ×1

python ×1