日志模块—logging

一、日志模块级别介绍

logging模块默认收集的日志是warning以上等级的

import logging

# 获取默认的日志收集器rootgetLogger()中不写字符串类型的名字就是默认
my_log = logging.getLogger()
# 设置默认的日志收集器等级
my_log.setLevel("ERROR")

logging.info('这是INFO等级的信息')
logging.warning('这是WARNING等级的信息')
logging.error('这是ERROR等级的信息')
logging.critical('这是CRITICAL等级的信息')

默认收集器是设置等级后,可按照设置的等级在控制台输出该等级以上的日志

二、log自定义收集器

import logging
# 一、创建一个名为:python24的日志收集器
my_log = logging.getLogger("python24")

# 二、设置日志收集器的等级(只设置该等级输出在控制台的还是默认等级,要绑定在输出渠道)
my_log.setLevel("DEBUG")

# 三、添加输出渠道(输出到控制台)
# 1、创建一个输出到控制台的输出渠道
sh = logging.StreamHandler()
# 2、设置输出等级
sh.setLevel("ERROR")
# 3、将输出渠道绑定到日志收集器上
my_log.addHandler(sh)

# 四、添加输出渠道(输出到文件)
fh = logging.FileHandler("log.log",encoding="utf8")   # 写文件名和格式
fh.setLevel("DEBUG")
my_log.addHandler(fh)

 三、日志输出格式设置

# 五、设置日志输出的格式
# 创建一个日志输出格式
formatter = logging.Formatter('%(asctime)s - [%(filename)s-->line:%(lineno)d] - %(levelname)s: %(message)s')
# 将输出格式和输出渠道进行绑定
sh.setFormatter(formatter)
fh.setFormatter(formatter)

四、日志轮转

 

原文地址:https://www.cnblogs.com/python-squirrel/p/12145495.html