logging日志模块2

 

import logging
import os
import time


class Log:
    def __init__(self):
        self.logger = logging.getLogger()
        # 设置日志打印级别. 打印该级别及以上的日志信息.
        self.logger.setLevel(logging.DEBUG)
        # 创建指定的输出格式
        self.format = logging.Formatter('[%(asctime)s] %(levelname)s [%(filename)s] [%(lineno)s] %(message)s')
        # 获取当前脚本所在目录的上一级目录
        path1 = os.path.dirname((os.getcwd()))  # D:\Avicii\Api_Test

        # 拼接路径
        path2 = os.path.join(path1, 'logs')  # D:\Avicii\Api_Test\logs

        self.file_path = os.path.join(path2,f'{time.strftime("%Y-%m-%d")}.log') # D:\Avicii\Api_Test\logs\2022-09-29.log

        # 创建文件处理器
        self.file_handler = logging.FileHandler(filename=self.file_path, mode='a', encoding='utf-8')

        # 设置文件处理器输出格式
        self.file_handler.setFormatter(self.format)

        # 创建控制台处理器
        self.console_handler = logging.StreamHandler()
        # 设置控制台处理器输出格式
        self.console_handler.setFormatter(self.format)

        # 日志器中添加文件处理器
        self.logger.addHandler(self.file_handler)
        # 日志器中添加控制台处理器
        self.logger.addHandler(self.console_handler)


logger = Log().logger

 

posted @ 2022-09-29 13:08  Avicii_2018  阅读(25)  评论(0编辑  收藏  举报