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

2022-09-03 19:09:10 浏览数 (1)

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

logger对象的常用方法有:

  • setLevel:设置日志等级

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

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

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

代码语言:javascript复制
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时,可以截获取所有等级的输出

代码语言:javascript复制
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')

0 人点赞