Files
@ b9ea10d3e419
Branch filter:
Location: kallithea/rhodecode/lib/timerproxy.py - annotation
b9ea10d3e419
920 B
text/x-python
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
1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 b9ea10d3e419 1e757ac98988 1e757ac98988 b9ea10d3e419 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 b9ea10d3e419 b9ea10d3e419 b9ea10d3e419 b9ea10d3e419 1e757ac98988 1e757ac98988 b9ea10d3e419 1e757ac98988 1e757ac98988 1e757ac98988 b9ea10d3e419 | from sqlalchemy.interfaces import ConnectionProxy
import time
from sqlalchemy import log
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
class TimerProxy(ConnectionProxy):
def __init__(self):
super(TimerProxy, self).__init__()
self.logging_name = 'timerProxy'
self.log = log.instance_logger(self, True)
def cursor_execute(self, execute, cursor, statement, parameters,
context, executemany):
now = time.time()
try:
self.log.info(color_sql(">>>>> STARTING QUERY >>>>>"))
return execute(cursor, statement, parameters, context)
finally:
total = time.time() - now
self.log.info(color_sql("<<<<< TOTAL TIME: %f <<<<<" % total))
|