一、什么是basicconfig?
logging.basicconfig()
是 pythonlogging
模块中最常用的配置函数,用于一次性设置日志系统的基本参数(如日志级别、输出格式、输出位置等)。- 只需调用一次,后续所有日志输出都会遵循这个配置。
二、basicconfig的常用参数
参数 | 作用说明 | 示例值 |
---|---|---|
level | 设置日志级别(只显示大于等于该级别的日志) | logging.info, logging.debug |
filename | 指定日志输出到的文件名(不指定则输出到控制台) | ‘app.log’ |
filemode | 文件写入模式,默认为 ‘a’(追加),可设为 ‘w’(覆盖) | ‘w’ |
format | 日志输出格式字符串 | ‘%(asctime)s - %(levelname)s - %(message)s’ |
datefmt | 时间格式字符串 | ‘%y-%m-%d %h:%m:%s’ |
encoding | 文件编码(仅当指定 filename 时有效) | ‘utf-8’ |
三、默认行为
- 如果不调用
basicconfig()
,日志系统有默认配置:- 日志级别为
warning
,只显示warning
及以上级别的日志。 - 日志输出到控制台。
- 日志格式为:
level:logger_name:message
,如:warning:root:demo
- 日志级别为
- 如果调用
basicconfig()
但不传参数,效果与默认配置一致。
四、你的代码详解
示例1
import logging # logging.basicconfig() logging.warning('demo')
- 这里没有调用
basicconfig()
,直接输出一条警告日志。 - 输出结果:
warning:root:demo
- 只会显示
warning
及以上级别的日志。
示例2
import logging logging.basicconfig() # 日志格式:格式字符 logging.warning('demo')
- 这里调用了
basicconfig()
,但没有传参数,效果与默认配置一致。 - 输出结果同上:
warning:root:demo
五、常见用法举例
1. 设置日志级别
logging.basicconfig(level=logging.info) logging.debug('调试信息') # 不会显示 logging.info('普通信息') # 会显示
2. 设置日志格式
logging.basicconfig( level=logging.debug, format='%(asctime)s - %(levelname)s - %(message)s' ) logging.info('日志格式演示')
输出示例:
2024-06-08 12:00:00,123 - info - 日志格式演示
3. 日志写入文件
logging.basicconfig( filename='myapp.log', level=logging.error, format='%(asctime)s - %(levelname)s - %(message)s', encoding='utf-8' ) logging.error('写入文件的错误日志')
六、常用格式化符号
占位符 | 说明 |
---|---|
%(asctime)s | 日志时间 |
%(levelname)s | 日志级别 |
%(message)s | 日志内容 |
%(filename)s | 文件名 |
%(lineno)d | 行号 |
%(name)s | 日志器名称 |
%(thread)d | 线程id |
七、总结
basicconfig()
用于一次性设置日志系统的基本参数。- 不传参数时,效果与默认配置一致:只显示
warning
及以上日志,输出到控制台,格式为level:root:message
。 - 推荐根据实际需求设置日志级别、格式和输出位置。
到此这篇关于python basicconfig()的文章就介绍到这了,更多相关python basicconfig()内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论