Python(logging.StreamHandler())
logging.StreamHandler() 是 Python 的 logging 模块中的一个类,用于将日志消息输出到流(如控制台或标准输出)。它是日志处理程序的一种,可以配合其他日志记录器使用。
1. 示例代码
以下是一个完整的示例,演示如何使用 logging.StreamHandler():
import logging
# 创建日志记录器
logger = logging.getLogger('my_logger')
logger.setLevel(logging.DEBUG)
# 创建流处理器
stream_handler = logging.StreamHandler()
# 设置日志格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
stream_handler.setFormatter(formatter)
# 将处理器添加到记录器
logger.addHandler(stream_handler)
# 记录日志
logger.debug('This is a debug message.')
logger.info('This is an info message.')
logger.warning('This is a warning message.')
logger.error('This is an error message.')
logger.critical('This is a critical message.')
2. 参数和方法
-
构造函数:
StreamHandler(stream=None):可以指定输出流,默认是sys.stderr。
-
常用方法:
setLevel(level):设置处理器的日志级别。setFormatter(formatter):设置日志格式。emit(record):将日志记录输出到指定流。
3. 注意事项
- 使用
StreamHandler将日志信息输出到控制台,但在生产环境中,通常还会使用文件处理器(FileHandler)将日志保存到文件中。 - 在配置多个处理器时,可以根据需求设置不同的日志级别和格式,以便灵活管理日志信息。

浙公网安备 33010602011771号