Mercurial > public > src > rhodecode
diff pylons_app/lib/timerproxy.py @ 153:a5a3bcc5ee89
Added colored formatter to project, and configs
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 16 May 2010 15:06:20 +0200 |
parents | 0c22a870bb79 |
children | 83c7ee1b5f5c |
line wrap: on
line diff
--- a/pylons_app/lib/timerproxy.py Sat May 15 19:53:23 2010 +0200 +++ b/pylons_app/lib/timerproxy.py Sun May 16 15:06:20 2010 +0200 @@ -2,6 +2,28 @@ import time import logging log = logging.getLogger('timerproxy') +BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE = xrange(30, 38) + +def color_sql(sql): + COLOR_SEQ = "\033[1;%dm" + COLOR_SQL = YELLOW + normal = '\x1b[0m' + return COLOR_SEQ % COLOR_SQL + sql + normal + +def format_sql(sql): + sql = color_sql(sql) + sql = sql.replace('SELECT', '\n SELECT \n\t')\ + .replace('FROM', '\n FROM')\ + .replace('ORDER BY', '\n ORDER BY')\ + .replace('LIMIT', '\n LIMIT')\ + .replace('WHERE', '\n WHERE')\ + .replace('AND', '\n AND')\ + .replace('LEFT', '\n LEFT')\ + .replace('INNER', '\n INNER')\ + .replace('INSERT', '\n INSERT')\ + .replace('DELETE', '\n DELETE') + return sql + class TimerProxy(ConnectionProxy): def cursor_execute(self, execute, cursor, statement, parameters, context, executemany): @@ -12,7 +34,11 @@ finally: total = time.time() - now try: - log.info("Query: %s" % statement % parameters) + log.info(format_sql("Query: %s" % statement % parameters)) except TypeError: - log.info("Query: %s %s" % (statement, parameters)) + log.info(format_sql("Query: %s %s" % (statement, parameters))) log.info("<<<<< TOTAL TIME: %f <<<<<" % total) + + + +