From acdbc30fd8d12d25f48a2ea839a6c2eb91527b95 Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Wed, 10 Apr 2024 10:55:51 +0300 Subject: logging: Set up logging in wsgi.py Make flask use the gunicorn loggers when run under gunicorn, otherwise, use our custom logging. Putting the logging setup inside `create_app(…)` would cause each worker to override the gunicorn loggers, meaning we were not receiving the logs, especially for `debug(…)` calls. --- qc_app/__init__.py | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'qc_app') diff --git a/qc_app/__init__.py b/qc_app/__init__.py index c9756a1..88e65be 100644 --- a/qc_app/__init__.py +++ b/qc_app/__init__.py @@ -1,9 +1,7 @@ """The Quality-Control Web Application entry point""" import os -import sys import logging from pathlib import Path -from logging import StreamHandler from flask import Flask @@ -20,15 +18,6 @@ def override_settings_with_envvars( for setting in (key for key in app.config if key not in ignore): app.config[setting] = os.environ.get(setting) or app.config[setting] -def setup_logging(app: Flask): - """Setup application logging""" - handler_stderr = StreamHandler(stream=sys.stderr) - app.logger.addHandler(handler_stderr) - - rootlogger = logging.getLogger() - rootlogger.addHandler(handler_stderr) - rootlogger.setLevel(app.config["LOG_LEVEL"]) - def create_app(): """The application factory""" app = Flask(__name__) @@ -38,7 +27,6 @@ def create_app(): app.config.from_envvar("QCAPP_CONF") # Override defaults with instance path override_settings_with_envvars(app, ignore=tuple()) - setup_logging(app) if "QCAPP_SECRETS" in os.environ: app.config.from_envvar("QCAPP_SECRETS") -- cgit v1.2.3