自定义过滤器不适用于django.server之类的django默认记录器

时间:2019-06-06 12:16:47

标签: python-3.x logging django-logging

我编写了一个自定义过滤器来捕获请求上下文,并将该过滤器用于我的自定义记录器和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记录器记录一些请求参数以进行控制台。

0 个答案:

没有答案