tooluniverse.logging_config 模块

ToolUniverse 的全局日志配置

该模块基于 Python 标准日志模块,提供了一个集中式日志系统。它允许在整个 ToolUniverse 项目中通过不同的详细级别控制调试输出。

用法:

# 通过环境变量设置日志级别 export TOOLUNIVERSE_LOG_LEVEL=DEBUG

# 或通过编程方式设置 from tooluniverse.logging_config import setup_logging, get_logger setup_logging(‘DEBUG’)

# 在代码中使用 logger = get_logger(__name__) logger.info(“这是一个信息消息”) logger.debug(“这是一个调试消息”)

class tooluniverse.logging_config.ToolUniverseFormatter[源代码]

基类:Formatter

带有彩色输出和表情符号前缀的自定义格式化器

COLORS = {'CRITICAL': '\x1b[35m', 'DEBUG': '\x1b[36m', 'ERROR': '\x1b[31m', 'INFO': '\x1b[32m', 'PROGRESS': '\x1b[34m', 'RESET': '\x1b[0m', 'WARNING': '\x1b[33m'}
EMOJI_PREFIX = {'CRITICAL': '🚨 ', 'DEBUG': '🔧 ', 'ERROR': '❌ ', 'INFO': 'ℹ️  ', 'PROGRESS': '⏳ ', 'WARNING': '⚠️  '}
format(record)[源代码]

将指定记录格式化为文本。

记录的属性字典被用作字符串格式化操作的操作数,从而生成返回的字符串。在格式化字典之前,需要执行几个准备步骤。记录的 message 属性通过 LogRecord.getMessage() 方法计算得出。如果格式化字符串使用了时间(通过调用 usesTime() 方法判断),则会调用 formatTime() 方法来格式化事件时间。如果存在异常信息,则会使用 formatException() 方法对其进行格式化,并将其附加到消息中。

class tooluniverse.logging_config.ToolUniverseLogger[源代码]

基类:object

工具宇宙的单例日志管理器

static __new__(cls)[源代码]
__init__()[源代码]
reconfigure_for_stdio()[源代码]

将日志记录器重新配置为在标准输入输出模式下输出到标准错误(stderr)

get_logger(name=None)[源代码]

获取日志记录器实例

set_level(level)[源代码]

设置日志级别

tooluniverse.logging_config.reconfigure_for_quiet()[源代码]

Reconfigure logging to suppress INFO-level messages (quiet mode).

This function should be called after TOOLUNIVERSE_QUIET is set to ensure that ℹ️ info lines are suppressed even if the logger singleton was already initialized before the env var was exported.

tooluniverse.logging_config.reconfigure_for_stdio()[源代码]

将日志重新配置为在标准输入输出模式下输出到标准错误(stderr)。

此函数应在进入标准输入输出模式的最开始调用,以确保所有日志输出到标准错误而不是标准输出。

tooluniverse.logging_config.setup_logging(level=None)[源代码]

设置全局日志配置

参数:

level (str) – 日志级别(’DEBUG’、’INFO’、’WARNING’、’ERROR’、’CRITICAL’)

tooluniverse.logging_config.get_logger(name=None)[源代码]

获取日志记录器实例

参数:

name (str, optional) – 记录器名称(通常为 __name__)

退货

logging.Logger: Logger instance

tooluniverse.logging_config.set_log_level(level)[源代码]

设置全局日志级别

tooluniverse.logging_config.debug(msg, *args, **kwargs)[源代码]

记录调试消息

tooluniverse.logging_config.info(msg, *args, **kwargs)[源代码]

日志信息消息

tooluniverse.logging_config.progress_log(msg, *args, **kwargs)[源代码]

记录进度消息

tooluniverse.logging_config.warning(msg, *args, **kwargs)[源代码]

记录警告消息

tooluniverse.logging_config.error(msg, *args, **kwargs)[源代码]

记录错误消息

tooluniverse.logging_config.critical(msg, *args, **kwargs)[源代码]

记录关键消息

tooluniverse.logging_config.minimal(msg, *args, **kwargs)

日志信息消息

tooluniverse.logging_config.verbose(msg, *args, **kwargs)

记录调试消息

tooluniverse.logging_config.progress(msg, *args, **kwargs)

记录进度消息

tooluniverse.logging_config.get_hook_logger(name='HookManager')[源代码]

获取专门为钩子操作配置的记录器。

参数:

name (str) – 记录器名称。默认值为 ‘HookManager’

退货

logging.Logger: Configured logger for hook operations

tooluniverse.logging_config.log_hook_execution(hook_name, tool_name, execution_time, success)[源代码]

记录钩子执行详情以便监控和调试。

参数:
  • hook_name (str) – 执行的钩子名称

  • tool_name (str) – 应用挂钩的工具名称

  • execution_time (float) – 执行钩子所用时间(秒)

  • success (bool) – 钩子执行是否成功