当前位置 : 主页 > 编程语言 > python >

python创建多个logging日志文件的方法实现

来源:互联网 收集:自由互联 发布时间:2023-08-17
为每一个计算过程创建一个单独的日志文件,并写入对应的结果,同时保留控制台输出的功能,控制台输出与日志文件记录可以分开单独控制。 import osimport loggingdef creat_logger(log_path,l

为每一个计算过程创建一个单独的日志文件,并写入对应的结果,同时保留控制台输出的功能,控制台输出与日志文件记录可以分开单独控制。

import os
import logging
def creat_logger(log_path,logging_name,suf_name):
    if not os.path.exists(log_path):
        os.makedirs(log_path)
    log_full_path = log_path + logging_name + suf_name
    logger = logging.getLogger(logging_name)
    logger.setLevel(level=logging.DEBUG)
    handler = logging.FileHandler(log_full_path, encoding='UTF-8',mode = 'w')
    handler.setLevel(logging.INFO)
    formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    handler.setFormatter(formatter)
    console = logging.StreamHandler()
    console.setLevel(logging.DEBUG)
    logger.addHandler(handler)
    logger.addHandler(console)
    return logger
if __name__ =='__main__':
    for i in range(5):
        for j in range(4):
            log_trace = creat_logger('./log/i_loop'+str(i)+'/','j_loop'+str(j),'.txt')
            log_trace.debug('DEBUG: iloop = %d , jloop = %d',i,j)
            log_trace.info('INFO: iloop = %d , jloop = %d',i,j)
            for handler in list(log_trace.handlers):
                log_trace.removeHandler(handler)

控制台输出结果

日志文件输出

到此这篇关于python创建多个logging日志文件的方法实现的文章就介绍到这了,更多相关python创建logging日志文件内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

上一篇:Python中横向或纵向拼接两个表方法实例
下一篇:没有了
网友评论