Login

TerminalLoggingMiddleware

Author:
heckj
Posted:
June 4, 2007
Language:
Python
Version:
.96
Tags:
sql middleware terminal logging
Score:
7 (after 7 ratings)

A handy ANSI-colored logging mechanism to display the SQL queries and times in the terminal when using django-admin.py runserver. DEBUG mode must be true for this to work.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
from django.db import connection 

class TerminalLogging:
    def process_response(self, request, response):
        from sys import stdout
        if stdout.isatty():
            for query in connection.queries :
                print "\033[1;31m[%s]\033[0m \033[1m%s\033[0m" % (query['time'],
 " ".join(query['sql'].split()))
        return response

More like this

Comments

akhavr (on June 4, 2007):
<p>Where the connection object on the 5th line comes from?</p>

#

udfalkso (on June 4, 2007):
<p>from django.db import connection</p>

#

akhavr (on June 5, 2007):
<p>I guess it would be helpful to include that line</p> <pre>from django.db import connection </pre> <p>to the snippet itself :)</p>

#

Please login first before commenting.