码迷,mamicode.com
首页 > 编程语言 > 详细

python中的logging模块

时间:2019-05-23 21:22:21      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:logger   记录   默认参数   mamicode   rop   tar   icc   思路   问题:   

研究了好些天的logging模块,今天终于能用稍微清晰一点的思路记录一下了~~~

一、root  logger

import logging

logging.debug(这是debug)
logging.info(这是info)
logging.warning(这是warning)
logging.error(这是error)
logging.critical(这是critical)

最后结果是:控制台输出warning、error、critical级别的日志

这是warning
这是error
这是critical

日志输出说明3个问题:

1、日志默认level是warning

2、未配置formater时,日志直接输出内容(message),不进行格式拼接

3、日志默认的handler是StreamHandler 

level的级别排序为CRITICAL > ERROR > WARNING > INFO > DEBUG

技术图片

定义的记录级别越低,信息越多,级别越高,信息越少

直接使用logging输出日志时,默认创建的就是root logger

二、basicConfig方法配置logging记录格式

basciConfig配置记录的几种格式参数:

技术图片

其中format参数用来设置日志输出格式,日志输出格式的配置参数如下:

技术图片

level参数用来设置默认的root logger的level

format和level的设置方式如下:

logging.basicConfig(level=logging.INFO,format="%(asctime)s %(thread)d %(message)s")

logging.info(已经配置basicConfig)

输出如下:

2011-08-31 19:18:29,81 - 24631 - 已经配置basicConfig

三、logger类

root  logger

root = logging.getLogger() 

parent logger

logger = logging.getLogger(s) 

child logger

logger_child = logging.getLogger(s.s1)

logger的类关系通过“.”进行设置,name相同,logger唯一相同

通常使用方法:

root = logging.getLogger()
root.setLevel(logging.INFO)
sh = logging.StreamHandler()
sh.setLevel(logging.WARNING)
sh.setFormatter(logging.Formatter(%(asctime)s - %(message)s))
root.addHandler(sh)
root.warning(这是log)

logger输出日志时,因为logger和handler均有level,所以,日志的level要先与logger的level进行比较,大于logger的level才能与handler的level进行比较,大于handler的level才能输出到对应的位置,若小于handler的level,则当前logger不输出,若日志的level直接小于logger的level,那么当前logger直接不输入日志,无需再进行后边的比较

 

参数propagate

默认参数propagate的参数值为true,及当前logger打印日志输出之后,还需要将日志传入到所有父节点和根节点进行打印输出,所修改propagate为false,则当前级别logger的日志不再向上级进行传输

 

参考文章:

[Python 模块] logging模块、Logger类

使用python的logging模块

python中logging模块的一些简单用法

使用python的logging模块

 

python中的logging模块

标签:logger   记录   默认参数   mamicode   rop   tar   icc   思路   问题:   

原文地址:https://www.cnblogs.com/jeff-z-blog/p/10914405.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!