diff --git a/lung_cancer_screening/settings.py b/lung_cancer_screening/settings.py index ab771e1f..8b149d64 100644 --- a/lung_cancer_screening/settings.py +++ b/lung_cancer_screening/settings.py @@ -9,7 +9,7 @@ For the full list of settings and their values, see https://docs.djangoproject.com/en/5.2/ref/settings/ """ - +import sys from os import environ from pathlib import Path @@ -157,3 +157,50 @@ def boolean_env(key, default=None): # https://docs.djangoproject.com/en/5.2/ref/settings/#default-auto-field DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' + +LOG_QUERIES = boolean_env("LOG_QUERIES") +LOGGING = { + "version": 1, # the dictConfig format version + "disable_existing_loggers": False, # retain the default loggers + "formatters": { + "verbose": { + "format": "%(asctime)s [%(process)d] [%(levelname)s] [%(module)s] %(message)s", + "datefmt": "[%Y-%m-%d %H:%M:%S %z]", + "class": "logging.Formatter", + } + }, + "handlers": { + "console": { + "class": "logging.StreamHandler", + "formatter": "verbose", + "stream": sys.stdout, + }, + }, + "root": { + "handlers": ["console"], + "level": "DEBUG", + }, + "loggers": { + "django": { + "level": "INFO", + "handlers": ["console"], + "propagate": False, + }, + "django.db.backends": { + "level": "DEBUG" if LOG_QUERIES else "INFO", + "handlers": ["console"], + "propagate": False, + }, + "django.server": { + "level": "INFO", + "handlers": ["console"], + "propagate": False, + }, + "django.utils.autoreload": { + "level": "INFO", + "handlers": ["console"], + "propagate": False, + }, + "faker": {"level": "INFO"}, + }, +}