##// END OF EJS Templates
Changed OrderedDict implementation to pypy odict, in general it's the fastest and most reliable solution. Added OrderedTuple from python foundation.
Changed OrderedDict implementation to pypy odict, in general it's the fastest and most reliable solution. Added OrderedTuple from python foundation.

File last commit:

r1307:c1516b35 beta
r1337:37625d30 beta
Show More
timerproxy.py
30 lines | 847 B | text/x-python | PythonLexer
renamed project to rhodecode
r547 from sqlalchemy.interfaces import ConnectionProxy
import time
let timerproxy use logging module
r1191 import logging
log = logging.getLogger('timerproxy')
renamed project to rhodecode
r547 BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE = xrange(30, 38)
pep8ify
r1307
renamed project to rhodecode
r547 def color_sql(sql):
COLOR_SEQ = "\033[1;%dm"
COLOR_SQL = YELLOW
normal = '\x1b[0m'
timperproxy will just measure the time of queries, and formatting will be handled by the new sql_formatter of queries from sqlalchemy itself. Updated ini files for new way logging
r1186 return COLOR_SEQ % COLOR_SQL + sql + normal
renamed project to rhodecode
r547
pep8ify
r1307
renamed project to rhodecode
r547 class TimerProxy(ConnectionProxy):
timperproxy will just measure the time of queries, and formatting will be handled by the new sql_formatter of queries from sqlalchemy itself. Updated ini files for new way logging
r1186
renamed project to rhodecode
r547 def __init__(self):
super(TimerProxy, self).__init__()
timperproxy will just measure the time of queries, and formatting will be handled by the new sql_formatter of queries from sqlalchemy itself. Updated ini files for new way logging
r1186
def cursor_execute(self, execute, cursor, statement, parameters,
context, executemany):
renamed project to rhodecode
r547 now = time.time()
try:
let timerproxy use logging module
r1191 log.info(color_sql(">>>>> STARTING QUERY >>>>>"))
renamed project to rhodecode
r547 return execute(cursor, statement, parameters, context)
finally:
total = time.time() - now
let timerproxy use logging module
r1191 log.info(color_sql("<<<<< TOTAL TIME: %f <<<<<" % total))