logging模块学习笔记:logger 对象、日志等级

时间:2022-06-23 22:00:01

logger:日志对象,logging模块中最基础的对象,用logging.getLogger(name)方法进行初始化,name可以不填。通常logger的名字我们对应模块名,如聊天模块、数据库模块、验证模块等。

logger对象的常用方法有:

setLevel:设置日志等级

日志等级分别有以下几种:

CRITICAL : 'CRITICAL',
ERROR : 'ERROR',
WARNING : 'WARNING',
INFO : 'INFO',
DEBUG : 'DEBUG',
NOTSET : 'NOTSET',

一旦设置了日志等级,则调用比等级低的日志记录函数则不会输出,如:

 

import logging
import sys

l_g
= logging.getLogger()
l_g.setLevel(logging.ERROR) #日志等级为ERROR

s_h
= logging.StreamHandler(sys.stderr)
l_g.addHandler(s_h)


l_g.info(
'dddd') #输出等级为info

上面示例用到了StreamHandler 流对象,要进行日志输出必须有一个handler才行,具体loggin模块的handler会在下节讨论

debug:debug级输出

info:info 级输出,重要信息

warning:warning级输出,与warn相同,警告信息

error:error级输出,错误信息

critical :critical级输出,严重错误信息

五个等级从低到高分别是debug到critical

当seLevel设置为DEBUG时,可以截获取所有等级的输出

import logging
import sys

l_g
= logging.getLogger()
l_g.setLevel(logging.DEBUG)

s_h
= logging.StreamHandler(sys.stderr)
l_g.addHandler(s_h)


l_g.debug(
'debug msg')
l_g.info(
'info msg')
l_g.error(
'error msg')
l_g.warn(
'warn msg')

以上信息皆可显示