是的,Python的logging模块提供了RotatingFileHandler类来实现日志按大小分割的功能。这个类可以设置日志文件的最大大小和最大备份文件数,当日志文件达到最大大小时会自动创建新的日志文件并将旧文件备份。以下是一个使用RotatingFileHandler类的示例代码:
import logging from logging.handlers import RotatingFileHandler logger = logging.getLogger('example') logger.setLevel(logging.INFO) handler = RotatingFileHandler('example.log', maxBytes=1024, backupCount=3) formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') handler.setFormatter(formatter) logger.addHandler(handler) logger.info('This is a test message')
在上面的例子中,设置了最大日志文件大小为1024字节,最大备份文件数为3个。当example.log文件达到1024字节时,会自动创建一个新的日志文件example.log.1,并将旧文件备份为example.log.2,依此类推。