Middelware to remember sql query log from before a redirect

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
from django.http import HttpResponseRedirect
from django.core.exceptions import MiddlewareNotUsed

class SqlDebuggingRedirWrapMiddleware(object):
    def __init__(self):
        if not (getattr(settings, 'DEBUG', False)):
            raise django.exceptions.MiddlewareNotUsed()
        
    def process_response(self, request, response):
        if isinstance(response, HttpResponseRedirect):
            request.session['_redir_queries'] = connection.queries
        return response
    
    def process_request(self, request):        
        if '_redir_queries' in request.session:
            connection.queries[0:0] = request.session['_redir_queries']
            del request.session['_redir_queries']

More like this

  1. another request logging middleware with request time and extra info by yoav 2 years, 4 months ago
  2. SQL Log Middleware w/query count & exec time by tobias 7 years ago
  3. SQL Log Middleware by joshua 7 years, 1 month ago
  4. Color SQL logging middleware by moe 6 years, 2 months ago
  5. SQL Log Middleware - with multiple databases by guglielmocelata 3 years, 2 months ago

Comments

(Forgotten your password?)