| 
 | 
 
logging 库使用说明 
1. logging 库简介 
logging 是 Python 标准库中的一个模块,用于记录日志信息。它提供了一套灵活的日志记录系统,可以帮助开发者记录程序运行时的各种信息,如调试信息、错误信息等。 
 
2. 基本使用步骤 
2.1 导入 logging 模块 
首先,需要在代码顶部导入 logging 模块: 
 
Python 
采纳 
复制 
新建文件 
import logging 
2.2 配置 logging 
在记录日志之前,通常需要配置 logging,包括设置日志级别、日志格式和日志输出位置等。 
 
Python 
采纳 
复制 
新建文件 
logging.basicConfig(level=logging.DEBUG, 
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', 
                    datefmt='%Y-%m-%d %H:%M:%S') 
level 参数指定了日志级别,低于该级别的日志信息将被忽略。常见的日志级别有 DEBUG、INFO、WARNING、ERROR 和 CRITICAL。 
 
format 参数指定了日志信息的格式。 
 
datefmt 参数指定了日期和时间的格式。 
 
2.3 记录日志 
配置完成后,就可以使用 logging 模块提供的函数来记录日志了。这些函数包括 debug()、info()、warning()、error() 和 critical(),分别对应不同的日志级别。 
 
Python 
采纳 
复制 
新建文件 
logging.debug('这是一个调试信息') 
logging.info('这是一个普通信息') 
logging.warning('这是一个警告信息') 
logging.error('这是一个错误信息') 
logging.critical('这是一个严重错误信息') 
3. 高级功能 
3.1 日志记录器(Logger) 
logging 模块允许创建多个日志记录器(Logger),每个记录器都有自己的日志级别和处理器(Handler)。 
 
Python 
采纳 
复制 
新建文件 
logger = logging.getLogger('my_logger') 
logger.setLevel(logging.DEBUG) 
3.2 处理器(Handler) 
处理器负责将日志信息发送到指定的目的地,如控制台、文件等。 
 
Python 
采纳 
复制 
新建文件 
console_handler = logging.StreamHandler() 
console_handler.setLevel(logging.DEBUG) 
 
file_handler = logging.FileHandler('my_log.log') 
file_handler.setLevel(logging.ERROR) 
3.3 格式器(Formatter) 
格式器用于定义日志信息的格式。 
 
Python 
采纳 
复制 
新建文件 
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') 
console_handler.setFormatter(formatter) 
file_handler.setFormatter(formatter) 
3.4 将处理器添加到记录器 
最后,将处理器添加到记录器中,以便记录器能够将日志信息发送到这些处理器。 
 
Python 
采纳 
复制 
新建文件 
logger.addHandler(console_handler) 
logger.addHandler(file_handler) 
3.5 使用记录器记录日志 
现在,可以使用配置好的记录器来记录日志了。 
 
Python 
采纳 
复制 
新建文件 
logger.debug('这是一个调试信息') 
logger.info('这是一个普通信息') 
logger.warning('这是一个警告信息') 
logger.error('这是一个错误信息') 
logger.critical('这是一个严重错误信息') 
4. 示例代码 
下面是一个完整的示例代码,展示了如何使用 logging 模块进行日志记录: 
 
Python 
采纳 
复制 
新建文件 
import logging 
 
# 创建日志记录器 
logger = logging.getLogger('my_logger') 
logger.setLevel(logging.DEBUG) 
 
# 创建控制台处理器 
console_handler = logging.StreamHandler() 
console_handler.setLevel(logging.DEBUG) 
 
# 创建文件处理器 
file_handler = logging.FileHandler('my_log.log') 
file_handler.setLevel(logging.ERROR) 
 
# 创建格式器 
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') 
 
# 将格式器添加到处理器 
console_handler.setFormatter(formatter) 
file_handler.setFormatter(formatter) 
 
# 将处理器添加到记录器 
logger.addHandler(console_handler) 
logger.addHandler(file_handler) 
 
# 记录日志 
logger.debug('这是一个调试信息') 
logger.info('这是一个普通信息') 
logger.warning('这是一个警告信息') 
logger.error('这是一个错误信息') 
logger.critical('这是一个严重错误信息') 
通过上述步骤,您可以灵活地使用 logging 模块来记录和管理日志信息。 |   
 
 
 
 |