diff --git a/.gitignore b/.gitignore index 73a8458..c7669f8 100644 --- a/.gitignore +++ b/.gitignore @@ -237,5 +237,8 @@ cython_debug/ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. -#.idea/ +.idea/ + +# Ignore log files +**.log diff --git a/app/__init__.py b/app/__init__.py index 1553d03..9ac6c38 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -4,7 +4,7 @@ from logging import Logger, Formatter, getLogger, DEBUG, INFO, FileHandler def load_config_from_environ(app: Flask) -> Flask: - for env_var in os.environ.keys().filter(lambda x: x.startswith(app.name.upper())): + for env_var in filter(lambda x: x.startswith(app.name.upper()), os.environ.keys()): config_name = env_var[len(app.name):] app.config[config_name] = os.environ[env_var] @@ -12,20 +12,22 @@ def load_config_from_environ(app: Flask) -> Flask: def init_logger(app: Flask, log_level=INFO) -> Flask: - logger = getLogger(__name__) + logger = getLogger(app.name) formatter = Formatter(f'[%(asctime)s] {app.name.upper()} %(levelname)s: %(message)s (%(filename)s.%(funcName)s)') - logger.setFormatter(formatter) logger.setLevel(log_level) to_file = FileHandler(os.environ.get('APP_LOG_PATH', f'./{app.name}.log')) + to_file.setFormatter(formatter) logger.addHandler(to_file) app.logger = logger return app -def create_app() -> Flask: - app = Flask(__name__) +def create_app(app_name: str='MRE') -> Flask: + app = Flask(app_name) app = load_config_from_environ(app) app = init_logger(app) + app.logger.info(app.name) + return app