From a5b513c9374eaa7879b94a100d2bcbcc9bcb7e79 Mon Sep 17 00:00:00 2001 From: clement Date: Sun, 28 Apr 2024 16:14:44 +0200 Subject: [PATCH] refactor(logger): use standard and root logger instances (#29) * refactor(logger): Ute the standard python function to get a logger instance * refactor(loogger): Use root logger in logger file --- src/configdialog.py | 5 +++-- src/localization.py | 17 +++++++---------- src/logger.py | 20 +++++++------------- src/main.pyw | 5 +++-- 4 files changed, 20 insertions(+), 27 deletions(-) diff --git a/src/configdialog.py b/src/configdialog.py index efad379..6ffa18c 100644 --- a/src/configdialog.py +++ b/src/configdialog.py @@ -1,10 +1,11 @@ +import logging import wx from babel import Locale from config import conf, LogLevelEnum from localization import get_supported_locales, get_app_locale -from logger import get_app_logger, set_log_level +from logger import set_log_level -log = get_app_logger(__name__) +log = logging.getLogger(__name__) LOG_LEVELS = { # Translators: A label for the log level in the settings dialog diff --git a/src/localization.py b/src/localization.py index 5f92a9e..9807c37 100644 --- a/src/localization.py +++ b/src/localization.py @@ -1,14 +1,13 @@ -import locale import gettext +import locale +import logging import wx from typing import Optional from pathlib import Path from babel import Locale from consts import APP_NAME, DEFAULT_LANG -from logger import get_app_logger - -logger = get_app_logger(__name__) +log = logging.getLogger(__name__) LOCALE_DIR = Path(__file__).parent / Path("res", "locale") @@ -22,7 +21,7 @@ def get_supported_locales(domain: str = APP_NAME) -> list[Locale]: if mo_file.exists(): supported_locales.append(detected_locale) else: - logger.warning( + log.warning( f"Translation compiled file not found for: {detected_locale.english_name}" ) return supported_locales @@ -39,13 +38,11 @@ def get_wx_locale(current_locale: Locale) -> wx.Locale: """Get the wxPython locale name from the babel locale""" find_language = wx.Locale.FindLanguageInfo(current_locale.language) if find_language: - logger.debug( + log.debug( f"wxPython locale found for: {current_locale.english_name}({find_language.Language})" ) return wx.Locale(find_language.Language) - logger.warning( - f"wxPython locale not found for: {current_locale.english_name}" - ) + log.warning(f"wxPython locale not found for: {current_locale.english_name}") return wx.Locale(wx.LANGUAGE_DEFAULT) @@ -58,7 +55,7 @@ def setup_translation(locale: Locale) -> None: fallback=True, ) translation.install() - logger.debug(f"gettext Translation setup for: {locale.english_name}") + log.debug(f"gettext Translation setup for: {locale.english_name}") def init_translation(language: Optional[str]) -> wx.Locale: diff --git a/src/logger.py b/src/logger.py index 14dba15..5e6522a 100644 --- a/src/logger.py +++ b/src/logger.py @@ -1,7 +1,7 @@ import logging -def setup_logging(level: str): +def setup_logging(level: str) -> None: """Setup logging configuration""" console_handler = logging.StreamHandler() file_handler = logging.FileHandler("basiliskLLM.log", mode='w') @@ -13,21 +13,15 @@ def setup_logging(level: str): ) -def set_log_level(level): +def set_log_level(level: str) -> None: """Change global log level to new level and update all loggers :param level: new log level """ - cur_level = logging.getLevelName(logging.getLogger().getEffectiveLevel()) + cur_level = logging.getLevelName(logging.root.getEffectiveLevel()) if cur_level == level: return - logging.getLogger().setLevel(level) - for handler in logging.getLogger().handlers: + logging.root.setLevel(level) + for handler in logging.root.handlers: handler.setLevel(level) - new_level = logging.getLevelName(logging.getLogger().getEffectiveLevel()) - logging.getLogger().debug( - f"Log level changed from {cur_level} to {new_level}" - ) - - -def get_app_logger(name): - return logging.getLogger(name) + new_level = logging.getLevelName(logging.root.getEffectiveLevel()) + logging.root.debug(f"Log level changed from {cur_level} to {new_level}") diff --git a/src/main.pyw b/src/main.pyw index 86c4897..3be61c5 100644 --- a/src/main.pyw +++ b/src/main.pyw @@ -1,3 +1,4 @@ +import logging import os import sys import winsound @@ -7,7 +8,7 @@ import wx import wx.adv import config -from logger import get_app_logger, setup_logging +from logger import setup_logging from localization import init_translation from consts import ( APP_NAME, @@ -19,7 +20,7 @@ from account import initialize_accountManager sys.path.append(os.path.join(os.path.dirname(__file__), "")) -log = get_app_logger(__name__) +log = logging.getLogger(__name__) class MainApp(wx.App):