From e44e58f6d5d6dfb68d0db3b1d9bdc01c5890fc1d Mon Sep 17 00:00:00 2001 From: Umair Khan Date: Wed, 15 Mar 2017 14:08:27 +0500 Subject: [PATCH] logging: Skip log records originated in site packages. This fixes the huge exception we get in our logs from django.template logger. This exception is a known bug in Django, see https://code.djangoproject.com/ticket/26886 Fixes #3974 --- zerver/lib/logging_util.py | 9 +++++++++ zproject/settings.py | 6 +++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/zerver/lib/logging_util.py b/zerver/lib/logging_util.py index 497b206e53..46a5787fbd 100644 --- a/zerver/lib/logging_util.py +++ b/zerver/lib/logging_util.py @@ -73,3 +73,12 @@ def skip_200_and_304(record): return False return True + +def skip_site_packages_logs(record): + # type: (logging.LogRecord) -> bool + # This skips the log records that are generated from libraries + # installed in site packages. + # Workaround for https://code.djangoproject.com/ticket/26886 + if 'site-packages' in record.pathname: + return False + return True diff --git a/zproject/settings.py b/zproject/settings.py index 14b068720c..f91c2723fa 100644 --- a/zproject/settings.py +++ b/zproject/settings.py @@ -992,6 +992,10 @@ LOGGING = { '()': 'django.utils.log.CallbackFilter', 'callback': zerver.lib.logging_util.skip_200_and_304, }, + 'skip_site_packages_logs': { + '()': 'django.utils.log.CallbackFilter', + 'callback': zerver.lib.logging_util.skip_site_packages_logs, + }, }, 'handlers': { 'zulip_admins': { @@ -1062,7 +1066,7 @@ LOGGING = { }, 'django.template': { 'handlers': ['console'], - 'filters': ['require_debug_true'], + 'filters': ['require_debug_true', 'skip_site_packages_logs'], 'level': 'DEBUG', 'propagate': False, },