要在Python中编写日志文件,可以使用logging模块。以下是一个示例代码,可以将日志写入到每个大于1MB的文件,并使用当前时间作为文件夹名称:

import os
import logging
from datetime import datetime

# 创建日志文件夹
log_folder = datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
os.makedirs(log_folder, exist_ok=True)

# 配置日志
logging.basicConfig(filename=os.path.join(log_folder, 'log.txt'), 
                    filemode='a', 
                    format='%(asctime)s - %(levelname)s - %(message)s',
                    level=logging.INFO)

# 创建日志记录器
logger = logging.getLogger()

# 设置日志文件大小为1MB
max_log_size = 1024 * 1024  # 1MB

# 创建文件处理器
file_handler = logging.handlers.RotatingFileHandler(filename=os.path.join(log_folder, 'log.txt'), 
                                                   maxBytes=max_log_size, 
                                                   backupCount=10)
logger.addHandler(file_handler)

# 写入日志
logger.info('This is a log message.')

# 关闭日志记录器
logger.removeHandler(file_handler)

上述代码中,log_folder变量用于存储当前时间的文件夹名称。os.makedirs函数用于创建文件夹。

logging.basicConfig函数用于配置日志,并将日志文件名设置为log.txtfilemode参数设置为a,表示以追加模式打开文件。format参数设置日志的格式。

max_log_size变量用于设置日志文件的最大大小为1MB。

RotatingFileHandler类用于创建文件处理器,该处理器将日志写入到指定的文件,并在日志文件大小超过最大限制时切换到下一个文件。

最后,使用logger.info函数写入日志内容。在写入完所有日志后,使用logger.removeHandler函数关闭日志记录器

python 写log文件 要求文件写入大于1MB切换下一个文件写入 文件夹命名为时间

原文地址: https://www.cveoy.top/t/topic/id4T 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录