编程语言
首页 > 编程语言> > 如何在python中限制日志文件大小

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

作者:互联网

我使用的是Windows 7和python 2.7.
我想将日志文件大小限制为5MB.
我的应用程序在启动时写入日志文件,然后应用程序终止.
当我的应用程序再次启动时,它将写入相同的日志文件.因此app不会持续运行.
应用程序启动,处理和终止.

我的日志记录代码是:

import logging
import logging.handlers
logging.basicConfig(filename=logfile.log, level="info", format='%(asctime)s %(levelname)s %(funcName)s(%(lineno)d) %(message)s')
logging.info("*************************************************")

我尝试使用RotatingFileHandler但它没有用

logging.handlers.RotatingFileHandler(logFile, mode='a', maxBytes=5*1024*1024, backupCount=2, encoding=None, delay=0)

那么,我如何在python中强制执行文件大小限制?

解决方法:

丢失basicConfig并试试这个:

import logging
from logging.handlers import RotatingFileHandler

log_formatter = logging.Formatter('%(asctime)s %(levelname)s %(funcName)s(%(lineno)d) %(message)s')

logFile = 'C:\\Temp\\log'

my_handler = RotatingFileHandler(logFile, mode='a', maxBytes=5*1024*1024, 
                                 backupCount=2, encoding=None, delay=0)
my_handler.setFormatter(log_formatter)
my_handler.setLevel(logging.INFO)

app_log = logging.getLogger('root')
app_log.setLevel(logging.INFO)

app_log.addHandler(my_handler)

while True:
    app_log.info("data")

这适用于我的机器

标签:python,logging,filehandler,log-files
来源: https://codeday.me/bug/20190930/1835445.html