ungana

Unnamed repository; edit this file 'description' to name the repository.
Info | Log | Files | Refs | README

commit ff0f6c6cf5192f715fc5b2d4f36ac46385a6470a
parent 3375febd6f2ad05f5c6bebd2dc7e40bfdfe4a2e1
Author: Carlosokumu <carlosokumu254@gmail.com>
Date:   Wed,  5 Nov 2025 21:35:32 +0300

fix: always  include a console handler

Diffstat:
Mungana/logging/logging_manager.py | 38+++++++++++++++++---------------------
1 file changed, 17 insertions(+), 21 deletions(-)

diff --git a/ungana/logging/logging_manager.py b/ungana/logging/logging_manager.py @@ -1,5 +1,5 @@ import logging -from typing import Optional +import sys class LoggingManager: def __init__( @@ -7,32 +7,28 @@ class LoggingManager: *, verbose: bool = False, quiet: bool = False, - log_file: Optional[str] = None ): - self._configure_logging(verbose, quiet, log_file) + self._configure_logging(verbose, quiet) - def _configure_logging( - self, - verbose: bool, - quiet: bool, - log_file: Optional[str] - ) -> None: + def _configure_logging(self, verbose: bool, quiet: bool) -> None: level = logging.DEBUG if verbose else ( logging.CRITICAL if quiet else logging.INFO ) - - config = { - "level": level, - "format": "%(message)s" if not verbose else "%(levelname)s: %(message)s", - "handlers": [] - } - - if log_file: - config["handlers"].append(logging.FileHandler(log_file)) - - logging.basicConfig(**config) + + fmt = "%(message)s" if not verbose else "%(levelname)s: %(message)s" + handlers = [] + + console_handler = logging.StreamHandler(sys.stdout) + console_handler.setFormatter(logging.Formatter(fmt)) + handlers.append(console_handler) + + logging.basicConfig(level=level, handlers=handlers) + logging.captureWarnings(True) + logging.getLogger().setLevel(level) + @staticmethod def get_logger(name: str) -> logging.Logger: - """Shortcut to get a named logger.""" + logger = logging.getLogger(name) + logger.propagate = True return logging.getLogger(name) \ No newline at end of file