From 343366db9169f145f6e934ee7ed02de31b4dd974 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 27 Jan 2026 10:49:55 +0100 Subject: [PATCH] Another update to logging init --- src/server/BreCal/__init__.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/server/BreCal/__init__.py b/src/server/BreCal/__init__.py index 2831024..27e2eb4 100644 --- a/src/server/BreCal/__init__.py +++ b/src/server/BreCal/__init__.py @@ -73,9 +73,13 @@ def create_app(test_config=None, instance_path=None): app.register_blueprint(ports.bp) log_level = getattr(logging, app.config.get("LOG_LEVEL", "DEBUG")) - log_kwargs = {"format": "%(asctime)s | %(name)s | %(levelname)s | %(message)s"} + log_format = "%(asctime)s | %(name)s | %(levelname)s | %(message)s" + root_logger = logging.getLogger() + for handler in list(root_logger.handlers): + root_logger.removeHandler(handler) + if app.config.get("LOG_TO_STDERR"): - log_kwargs["stream"] = sys.stderr + handler = logging.StreamHandler(sys.stderr) else: log_file = app.config.get("LOG_FILE", "brecaltest.log") if not os.path.isabs(log_file): @@ -83,12 +87,11 @@ def create_app(test_config=None, instance_path=None): log_dir = os.path.dirname(log_file) if log_dir and not os.path.exists(log_dir): os.makedirs(log_dir, exist_ok=True) - log_kwargs["filename"] = log_file - # Force handler setup so WSGI doesn't keep the default stderr handler. - try: - logging.basicConfig(level=log_level, force=True, **log_kwargs) - except Exception: - logging.basicConfig(level=log_level, force=True, stream=sys.stderr, **{"format": log_kwargs["format"]}) + handler = logging.FileHandler(log_file) + + handler.setFormatter(logging.Formatter(log_format, datefmt="%d.%m.%Y %H:%M:%S")) + root_logger.addHandler(handler) + root_logger.setLevel(log_level) if app.config.get("SECRET_KEY"): os.environ["SECRET_KEY"] = app.config["SECRET_KEY"]