maple.utils.logging

Centralized logging configuration.

This module provides a consistent logging setup across all MAPLE components. It configures Python’s standard logging with appropriate formatters, handlers, and log levels, and provides a factory function for creating namespaced loggers.

Key features: - Centralized configuration to prevent duplicate setup - Configurable log levels (DEBUG, INFO, WARNING, ERROR, CRITICAL) - Optional file logging alongside console output - Verbose mode with source location information - Automatic suppression of noisy third-party library logs - Namespaced loggers with “maple.” prefix for MAPLE components

The module uses a global flag to ensure logging is only configured once, even if setup_logging() is called multiple times. All MAPLE loggers use the “maple.” namespace prefix for easy filtering.

Functions

get_logger(name)

Create a namespaced logger for MAPLE components.

setup_logging([level, log_file, verbose])

Configure the global logging system for MAPLE.