From 79ddcefb629612da3fb05ccbb8b602d1f026b1f9 Mon Sep 17 00:00:00 2001 From: David Cramer Date: Thu, 24 Mar 2011 17:34:55 -0700 Subject: basic color code grouping of db aliases --- debug_toolbar/panels/sql.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'debug_toolbar/panels/sql.py') diff --git a/debug_toolbar/panels/sql.py b/debug_toolbar/panels/sql.py index 15c6ff3..19a4767 100644 --- a/debug_toolbar/panels/sql.py +++ b/debug_toolbar/panels/sql.py @@ -1,4 +1,5 @@ from datetime import datetime +import itertools import os import re import sys @@ -191,9 +192,21 @@ class SQLDebugPanel(DebugPanel): def content(self): width_ratio_tally = 0 + colors = [ + (256, 0, 0), # red + (0, 256, 0), # blue + (0, 0, 256), # green + ] + for n, db in enumerate(self._databases.itervalues()): + rgb = [0, 0, 0] + color = n % 3 + rgb[color] = 256 - n/3*32 + db['rgb_color'] = rgb + for alias, query in self._queries: query['alias'] = alias query['sql'] = reformat_sql(query['sql']) + query['rgb_color'] = self._databases[alias]['rgb_color'] try: query['width_ratio'] = (query['duration'] / self._sql_time) * 100 except ZeroDivisionError: @@ -207,7 +220,7 @@ class SQLDebugPanel(DebugPanel): params = map(escape, frame[0].rsplit('/', 1) + list(frame[1:])) stacktrace.append('{0}/{1} in {3}({2})\n {4}"'.format(*params)) query['stacktrace'] = mark_safe('\n'.join(stacktrace)) - + context = self.context.copy() context.update({ 'databases': sorted(self._databases.items(), key=lambda x: -x[1]['time_spent']), -- cgit v1.2.3