From 23da37fb46610a6db0f149bb71d31e2853def8cc Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 22 Sep 2020 11:33:38 +0200 Subject: [PATCH 1/6] rm catch-all logger --- castellum/settings/default.py | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/castellum/settings/default.py b/castellum/settings/default.py index 8be7f9a0f..1c5dba0d8 100644 --- a/castellum/settings/default.py +++ b/castellum/settings/default.py @@ -272,20 +272,13 @@ LOGGING = { }, }, 'loggers': { - '': { - 'handlers': ['debug-file', 'console'], - 'level': 'DEBUG', - 'propagate': True, - }, 'django': { - 'handlers': [], + 'handlers': ['debug-file', 'console'], 'level': 'DEBUG', - 'propagate': True, }, 'monitoring': { 'handlers': ['monitoring-file'], 'level': 'DEBUG', - 'propagate': False, }, 'django.server': { 'handlers': ['django.server'], -- GitLab From 814a21121331d5e71b57a4647667b045fae88821 Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 22 Sep 2020 11:34:00 +0200 Subject: [PATCH 2/6] define log levels in loggers, not handlers --- castellum/settings/default.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/castellum/settings/default.py b/castellum/settings/default.py index 1c5dba0d8..b2561b257 100644 --- a/castellum/settings/default.py +++ b/castellum/settings/default.py @@ -250,7 +250,6 @@ LOGGING = { }, 'handlers': { 'console': { - 'level': 'INFO', 'class': 'logging.StreamHandler', }, 'debug-file': { @@ -260,13 +259,11 @@ LOGGING = { 'formatter': 'verbose', }, 'monitoring-file': { - 'level': 'INFO', 'class': 'logging.FileHandler', 'filename': os.path.join(LOG_DIR, 'monitoring.log'), 'formatter': 'verbose', }, 'django.server': { - 'level': 'INFO', 'class': 'logging.StreamHandler', 'formatter': 'django.server', }, @@ -274,15 +271,15 @@ LOGGING = { 'loggers': { 'django': { 'handlers': ['debug-file', 'console'], - 'level': 'DEBUG', + 'level': 'INFO', }, 'monitoring': { 'handlers': ['monitoring-file'], - 'level': 'DEBUG', + 'level': 'INFO', }, 'django.server': { 'handlers': ['django.server'], - 'level': 'DEBUG', + 'level': 'INFO', 'propagate': False, }, }, -- GitLab From 2016731ae122db2b4be9d11a4e987fa085304692 Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 22 Sep 2020 11:41:27 +0200 Subject: [PATCH 3/6] refine logging format --- castellum/settings/default.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/castellum/settings/default.py b/castellum/settings/default.py index b2561b257..5522362c2 100644 --- a/castellum/settings/default.py +++ b/castellum/settings/default.py @@ -241,7 +241,7 @@ LOGGING = { 'disable_existing_loggers': False, 'formatters': { 'verbose': { - 'format': '%(asctime)s %(levelname)s %(name)s %(message)s' + 'format': '[%(asctime)s] %(levelname)s %(name)s %(message)s' }, 'django.server': { '()': 'django.utils.log.ServerFormatter', @@ -251,6 +251,7 @@ LOGGING = { 'handlers': { 'console': { 'class': 'logging.StreamHandler', + 'formatter': 'verbose', }, 'debug-file': { 'level': 'WARNING', -- GitLab From 8dd3e9d5e3bad2fd914f1bce1c9a7021ff2d905c Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 22 Sep 2020 11:34:56 +0200 Subject: [PATCH 4/6] rm debug file --- castellum/settings/default.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/castellum/settings/default.py b/castellum/settings/default.py index 5522362c2..fc56a5fd1 100644 --- a/castellum/settings/default.py +++ b/castellum/settings/default.py @@ -253,12 +253,6 @@ LOGGING = { 'class': 'logging.StreamHandler', 'formatter': 'verbose', }, - 'debug-file': { - 'level': 'WARNING', - 'class': 'logging.FileHandler', - 'filename': os.path.join(LOG_DIR, 'debug.log'), - 'formatter': 'verbose', - }, 'monitoring-file': { 'class': 'logging.FileHandler', 'filename': os.path.join(LOG_DIR, 'monitoring.log'), @@ -271,7 +265,7 @@ LOGGING = { }, 'loggers': { 'django': { - 'handlers': ['debug-file', 'console'], + 'handlers': ['console'], 'level': 'INFO', }, 'monitoring': { -- GitLab From 1739c37de6301d5c49da2302c9e0314433cc8ab0 Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 22 Sep 2020 11:36:10 +0200 Subject: [PATCH 5/6] do not duplicate django docs --- castellum/settings/default.py | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/castellum/settings/default.py b/castellum/settings/default.py index fc56a5fd1..46dea1505 100644 --- a/castellum/settings/default.py +++ b/castellum/settings/default.py @@ -218,24 +218,12 @@ BOOTSTRAP4 = { AXES_LOCKOUT_TEMPLATE = 'axes-lockout.html' -""" -Some notes on the logging configuration: - -- Loggers are hierarchical, so everything eventually ends up at ''. -- Most logger correspond to modules (e.g. django.server). -- 'monitoring' is our custom logger namespace to monitor user behavior. -- 'django.server' is the development server. It is not used in production. -- 'django' logs to console by default. It is listed here only to remove that handler - (as this is already covered by ''). - -See also https://docs.djangoproject.com/en/stable/topics/logging/ - -""" if os.access('/log', os.W_OK): LOG_DIR = '/log' else: LOG_DIR = BASE_DIR +# See https://docs.djangoproject.com/en/stable/topics/logging/ LOGGING = { 'version': 1, 'disable_existing_loggers': False, @@ -268,10 +256,12 @@ LOGGING = { 'handlers': ['console'], 'level': 'INFO', }, + # 'monitoring' is our custom logger namespace to monitor user behavior. 'monitoring': { 'handlers': ['monitoring-file'], 'level': 'INFO', }, + # 'django.server' is the development server. It is not used in production. 'django.server': { 'handlers': ['django.server'], 'level': 'INFO', -- GitLab From 084f89e70c0d9f6a58914e96ffff5162dc12d1a3 Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 22 Sep 2020 11:44:11 +0200 Subject: [PATCH 6/6] be specific about monitoring sensitivity --- castellum/settings/default.py | 1 + 1 file changed, 1 insertion(+) diff --git a/castellum/settings/default.py b/castellum/settings/default.py index 46dea1505..efe481237 100644 --- a/castellum/settings/default.py +++ b/castellum/settings/default.py @@ -257,6 +257,7 @@ LOGGING = { 'level': 'INFO', }, # 'monitoring' is our custom logger namespace to monitor user behavior. + # It contains potentially sensitive information (e.g. subject search terms). 'monitoring': { 'handlers': ['monitoring-file'], 'level': 'INFO', -- GitLab