logging模块
在Python中,logging
模块是一个强大的日志记录工具,它允许你以多种方式记录你的程序在运行时的活动。你给出的代码片段logging.basicConfig(...)
是用来配置logging
模块的基本设置的。
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
-
logging.basicConfig(...)
:
这是logging
模块中的一个函数,用于一次性设置基本的日志记录配置。在你没有显式配置logging
模块的多个logger、handler、formatter等的情况下,这是非常有用的。 -
level=logging.INFO
:
这设置了日志的级别。logging
模块有以下几个内置的日志级别(按重要性递增):DEBUG
,INFO
,WARNING
,ERROR
,CRITICAL
。在这里,你设置级别为INFO
,意味着所有级别为INFO
及以上的日志消息(即INFO
,WARNING
,ERROR
,CRITICAL
)都会被记录,而级别为DEBUG
的消息则会被忽略。 -
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
:
这设置了日志消息的格式。在这个格式字符串中,%
后面跟着的括号内的内容都是格式占位符,它们会被相应的日志记录属性所替换。具体来说:%(asctime)s
:被替换为日志记录的时间戳(默认格式是'YYYY-MM-DD HH:MM:SS,microseconds'
)。%(name)s
:被替换为日志记录器的名称。默认情况下,根记录器的名称是'root'
。%(levelname)s
:被替换为日志消息的级别名称(如'INFO'
)。%(message)s
:被替换为实际的日志消息内容。
使用这个配置后,当你记录一个INFO
级别的日志时,它可能会看起来像这样:
2023-10-23 10:00:00,123456 - root - INFO - This is an info message.
注意:时间戳、记录器名称、级别名称和消息内容之间的实际分隔符(在这个例子中是空格和短横线)取决于你设置的格式字符串。