是否有一个Django中间件/插件以有组织的方式记录我的所有请求?

时间:2011-01-29 20:40:17

标签: python django plugins logging

我想记录来自我的服务器的每个请求。是否有插件/中间件?

理想情况下,我希望它可以查询。

3 个答案:

答案 0 :(得分:4)

不知道这是不是你想要的,但django-sentry是一个很棒的应用程序,用于记录Django站点中发生的错误。它们可以在(精心设计的!)Web界面中显示,允许按错误发生次数等进行排序。

如果您只想记录请求,Apache的access.log就足够了。我想有很多工具可以解析和显示Apache日志的内容。

答案 1 :(得分:3)

你最好的选择似乎是django-request

答案 2 :(得分:2)

您应该将记录保留在Web服务器中,而不是Django中。虽然它可以记录,但这并不是你通常想做的事情。

如果您真的想要,这是一个示例中间件:

class RequestLoggingMiddleware(object):
    def process_request(self, request):
        syslog.syslog(' '.join([
            request.META['remote_addr'],
            request.get_full_path(),
        ]))