Python中 logging.basicConfig
logging.basicConfig
是 Python 中用来设置日志系统的一种最简便方法。通过它可以快速地指定日志级别、日志输出格式、输出目标(文件或控制台)等基本参数。
以下是这行配置的主要作用:
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
-
level=logging.INFO
- 设置最小的日志级别为
INFO
。 - 在 Python 的日志系统中,如果设置了某个级别的阈值,那么只有大于等于该级别的日志才会被输出。例如这里设置为
INFO
,那么DEBUG
级别的日志就不会输出,而INFO
、WARNING
、ERROR
、CRITICAL
这些级别的日志都会输出。 - 日志级别从低到高依次是:
DEBUG
<INFO
<WARNING
<ERROR
<CRITICAL
。
- 设置最小的日志级别为
-
format=‘%(asctime)s - %(levelname)s - %(message)s’
- 设置日志的输出格式,使用占位符(
%()
)插入不同的日志相关信息。常见的可用变量如下:%(asctime)s
:打印日志的时间(默认会包含日期和时间,精确到毫秒)。%(levelname)s
:日志级别名称(如 INFO、WARNING、ERROR 等)。%(message)s
:日志的具体消息内容(即在logging.info()
或logging.error()
等方法中传入的字符串)。
- 通过这种方式,可以让你的日志在控制台或文件中按统一格式显示,便于阅读和分析。
- 设置日志的输出格式,使用占位符(
这行配置放在脚本开头,通常就能满足许多简单的日志需求,例如控制台输出指定级别(这里是 INFO 以上)的日志,并使用统一的格式。之后在代码中,你就可以直接调用:
logging.info("这是一条INFO级别的日志")
logging.warning("这是一条WARNING级别的日志")
它们会按照你设定的格式输出到控制台。
如果要输出到文件,可以再加上 filename
等参数,例如:
logging.basicConfig(
filename='app.log',
filemode='a',
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
这样日志会自动被写入到 app.log
文件中。