Пользовательские фильтры не применяются к стандартным регистраторам django, таким как django.server - PullRequest
0 голосов
/ 06 июня 2019

Я написал собственный фильтр для захвата контекста запроса и использую этот фильтр для своих пользовательских регистраторов и регистраторов по умолчанию в django.С пользовательскими регистраторами он работает нормально, но когда дело доходит до стандартных регистраторов, таких как django.server или django.request, он не регистрирует должным образом.

Я добавил промежуточное ПО, в котором я устанавливаю фильтр с объектом запроса.

Первоначально фильтр добавляется с контекстом запроса как None, а затем, когда запрос сделан, новый фильтр будет снова добавлен с объектом запроса.В пользовательских регистраторах оба эти фильтра применяются, но по умолчанию применяется только фильтр Нет.Я даже попытался удалить фильтр «Нет» и оставить только фильтр запросов, но не использовать.

class RequestFilter:

    def __init__(self, request=None):
        self.request = request

    def filter(self, record):
        request = self.request
        """Do Something"""
        return True

Я хотел бы регистрировать некоторые параметры запроса на консоли с помощью регистраторов Django каждый раз, когда выполняется запрос.

...