Python 记录器:限制日志文件似乎不限制我的文件

法鲁奇

所以我想限制我的log文件。

import logging
import colorlog
from logging.handlers import RotatingFileHandler

def init_logger(dunder_name, testing_mode) -> logging.Logger:
    log_format = '[%(asctime)s]: [%(levelname)s]: %(message)s'

    bold_seq = '\033[1m'
    colorlog_format = (
        f'{bold_seq} '
        '%(log_color)s '
        f'{log_format}'
    )

    logFile = 'app.log'
    colorlog.basicConfig(format=colorlog_format)

    handler = RotatingFileHandler(logFile, mode='a', maxBytes=50, backupCount=0, encoding=None, delay=0)
    logger = logging.getLogger(dunder_name)

    if testing_mode:
        logger.setLevel(logging.DEBUG)
    else:
        logger.setLevel(logging.INFO)

    formatter = logging.Formatter(log_format)
    handler.setFormatter(formatter)
    logger.addHandler(handler)


    return logger

在定义maxBytes=50i cen 后看到我的日志文件继续增长(4MB此时)

我做错了什么?

卡尔文·吴

因为backupCount0

每当当前日志文件的长度接近 maxBytes 时,就会发生翻转;但是如果 maxBytes 或 backupCount 中的任何一个为零,则不会发生翻转,因此您通常希望将 backupCount 设置为至少 1,并且有一个非零的 maxBytes。

https://docs.python.org/3/library/logging.handlers.html#logging.handlers.RotatingFileHandler

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Python日志记录中限制日志文件大小

Python日志记录-具有root记录器的多个模块中的配置文件

Python记录器文件权限

Python记录器文件异常

python记录器不写入文件

Python:使用yaml配置记录器以在写入模式下打开日志文件

使Python记录器将除日志文件外的所有消息输出到stdout

Python日志记录-两个记录器,两个日志文件-如何配置logging.ini

Python 日志记录 - 记录器错误地导入到另一个文件

Python 键盘记录器:.txt 文件不会保存我的击键

如何从python记录器获取文件名

python中的记录器模块不会创建多个文件

如何在python中限制日志文件大小

Python日志记录,如何过滤特定的记录器

Python - 如果使用记录器的类被导入而不是在主 py 文件中,则记录器未定义错误

Python日志记录与写入文件

美丽的汤不限制python中的结果

即使我将级别设置为INFO,Python日志记录根记录器也不会显示信息

为什么我的 python 记录器在设置为 DEBUG 时仍然从更高的日志记录级别打印出消息?

影响python日志记录器的导入路径

从python的日志记录器中删除处理程序

带有根日志python的单独本地记录器

如何更改未命名记录器的python日志级别?

Python日志记录-检查日志文件的位置?

Python 日志记录创建额外的日志文件

如何在python记录器中指定调用者文件名

通过python将实时数据从数据记录器保存到csv文件

Python 记录器转储自“<日期>”到新文件

Python日志记录无法更改根记录器的日志级别