gmuse.logging#
Structured logging for gmuse with debug mode support.
This module provides a centralized logging configuration that can be toggled via the GMUSE_DEBUG environment variable.
- Public API:
setup_logger: Configure and return a logger with appropriate settings
get_logger: Get an existing logger or create a new one
configure_litellm_logging: Configure litellm library logging
- Environment Variables:
GMUSE_DEBUG: Set to “1”, “true”, or “yes” to enable debug logging
Module Contents#
Functions#
Configure and return a logger with appropriate settings. |
|
Get an existing logger or create a new one with default settings. |
|
Configure litellm library logging based on debug mode. |
Data#
Environment variable values that enable debug mode. |
|
Log message format (simple, no timestamps for CLI tool). |
API#
- gmuse.logging._DEBUG_ENV_VALUES: Final[frozenset[str]] = 'frozenset(...)'#
Environment variable values that enable debug mode.
- gmuse.logging._LOG_FORMAT: Final[str] = '[%(levelname)s] %(message)s'#
Log message format (simple, no timestamps for CLI tool).
- gmuse.logging.setup_logger(name: str = 'gmuse', level: Optional[int] = None, log_file: Optional[str] = None) logging.Logger#
Configure and return a logger with appropriate settings.
- Args:
name: Logger name, defaults to “gmuse” level: Logging level, defaults to INFO or DEBUG based on GMUSE_DEBUG env var log_file: Optional file path for log output. If provided, logs go to file instead of stderr.
- Returns:
Configured logger instance
- Example:
>>> logger = setup_logger() >>> logger.debug("This only shows when GMUSE_DEBUG=1") >>> logger.info("This always shows") >>> # With file logging: >>> logger = setup_logger(log_file="~/.cache/gmuse/debug.log")
- gmuse.logging.get_logger(name: str = 'gmuse') logging.Logger#
Get an existing logger or create a new one with default settings.
- Args:
name: Logger name, defaults to “gmuse”
- Returns:
Logger instance
- Example:
>>> from gmuse.logging import get_logger >>> logger = get_logger() >>> logger.info("Loading configuration...")
- gmuse.logging.configure_litellm_logging() None#
Configure litellm library logging based on debug mode.
Suppresses litellm’s verbose debug output unless GMUSE_DEBUG is enabled. This should be called once when the llm_client module is imported.