Files
@ 5ee341209d7f
Branch filter:
Location: kallithea/rhodecode/lib/timerproxy.py - annotation
5ee341209d7f
856 B
text/x-python
action logger will try to get IP address automatically based
on tmpl_context var (if defined)
on tmpl_context var (if defined)
1e757ac98988 1e757ac98988 1fb97030b9b7 1fb97030b9b7 1fb97030b9b7 1e757ac98988 1e757ac98988 c1516b35f91d 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1f47adeb67c2 1e757ac98988 c1516b35f91d 1e757ac98988 b9ea10d3e419 1e757ac98988 1e757ac98988 b9ea10d3e419 b9ea10d3e419 b9ea10d3e419 b9ea10d3e419 1e757ac98988 1e757ac98988 1fb97030b9b7 1e757ac98988 1e757ac98988 1e757ac98988 1fb97030b9b7 | 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))
|