python logging模块的使用

今天我专门学习了python中的日志模块,学习笔记整理汇总分享给需要的小童鞋~~

日志在编程中可是非常重要的一部分,它可以帮助我们快速定位到问题,也可以记录输出日志的时间、文件、函数以及代码行,甚至线程名和线程号,等等~~

logging模块主要功能组件:

loggers 配置文件可定义一些输出日志的appname
handler 过滤器,比如设置日志的分隔大小,输出位置,日志文件创建等
formatters 指定日志输出的格式

日志级别分类和设置:
logging.debug-('调试级别的日志')-运行输出所有级别的日志
logging.info-('信息级别的日志')-输出包含信息级别以上的日志
logging.warning-('警告级别的日志') -输出包含警告级别的日志
logging.error-('错误级别的日志')-输出包含错误级别以上的日志
logging.critical-('严重错误级别的日志')-仅输出严重错误日志

日志等级的关系为:CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET

比如,如果设置日志级别为 warning级别,运行程序时 只会输出
CRITICAL 、 ERROR >、WARNING 级别的日志信息,其他日志不会展示

控制日志处理器种类和设置:
[loggers]:日志对象,默认为root
[handlers]:常用的处理器有consoleHandler,fileHandler
[formatters]:

日志默认的格式为WARNING:root:警告级别的日志,即等级:Logger名称:输出消息。我们也可以在logging.basicConfig中使用format参数来修改其输出格式。

为了便于后期维护,我通过配置文件log.ini的方式配置日志,log.ini 文件配置信息的内容:

定义日志输出的APP名,指定过滤器这里用loggers功能


loggers

定义日志过滤器这里用handler功能


handler

定义日志输出格式,这里我们介绍最后一个组件formatters


format

程序中使用配置项配置日志:


日志输出

更多学习请参考官方文档:https://docs.python.org/3/library/logging.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容