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)将日志保存到文件中。
  • 在配置多个处理器时,可以根据需求设置不同的日志级别和格式,以便灵活管理日志信息。


posted @ 2024-11-04 17:22  做梦当财神  阅读(104)  评论(0编辑  收藏  举报