Mercurial > kallithea
view rhodecode/lib/timerproxy.py @ 3574:000653f7cdf9 beta
avoid displaying repr of internal classes in user facing messages
The context of the message will tell where the problem was and there is no reason to show
... does not exist for this repository <MercurialRepository at /home/marcink/repos/rhodecode>
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Thu, 21 Mar 2013 11:17:01 +0100 |
parents | 1f47adeb67c2 |
children | bf263968da47 |
line wrap: on
line source
from sqlalchemy.interfaces import ConnectionProxy 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 ''.join([COLOR_SEQ % COLOR_SQL, sql, normal]) class TimerProxy(ConnectionProxy): def __init__(self): super(TimerProxy, self).__init__() def cursor_execute(self, execute, cursor, statement, parameters, context, executemany): now = time.time() try: log.info(color_sql(">>>>> STARTING QUERY >>>>>")) return execute(cursor, statement, parameters, context) finally: total = time.time() - now log.info(color_sql("<<<<< TOTAL TIME: %f <<<<<" % total))