文章目录
- 一、简介
- 日志级别
- 三、记录器(logger)
一、简介
logging模块是python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等。
Logger从来不直接实例化,经常通过logging模块级方法logging.getLogger(name)来获得,其中如果name不给定就用root,一般使用__name__。
logger=logging.getLogger(__name__)#创建logger对象日志级别
CRITICAL=50# FATAL = CRITICAL 软件整体性的挂掉ERROR=40# 报错后记录日志WARNING=30# WARN = WARNING,有可能发生风险的日志INFO=20# 常规日志DEBUG=10# 调试日志,开发过程中记录,上线后则不记录NOTSET=0# 不设置日志级别是自下而上匹配,如果 将日志级别记录为 INFO ,那么INFO以及以上的级别日志都会记录,以下的不记
# 修改日志级别:logging.basicConfig(level=logging.DEBUG)# 日志记录到文件:(否则只在命令行窗口输出)logging.basicConfig(filename="test.log",level=logging.INFO)指定日志格式:
想加入日期时间、显示日志器名字:(默认输出的格式包含3部分,日志级别,日志记录器的名字,以及日志内容,中间用“:”连接)
logging.basicConfig(format='%(asctime)s %(levelname)s %(name)s %(message)s')# 输出:2021-12-1507:44:16,547ERROR root thisiserror三、记录器(logger)
日志记录都是通过日志记录器(Logger)的实例对象创建的,每个记录器都有一个名称,直接使用logging来记录日志时,系统会默认创建名为 root 的记录器,这个记录器是根记录器。
记录器支持层级结构,子记录器通常不需要单独设置日志级别以及Handler(后面会介绍),如果子记录器没有单独设置,则它的行为会委托给父级。
# 记录器命名:logger=logging.getLogger(__name__)