gallery.accords-library.com/server/szurubooru/db/session.py

30 lines
693 B
Python
Raw Normal View History

2016-04-18 20:41:39 +00:00
import sqlalchemy
from szurubooru import config
2016-05-08 17:41:35 +00:00
class QueryCounter(object):
_query_count = 0
@staticmethod
def bump():
QueryCounter._query_count += 1
@staticmethod
def reset():
QueryCounter._query_count = 0
@staticmethod
def get():
return QueryCounter._query_count
2016-04-18 20:41:39 +00:00
# pylint: disable=invalid-name
2016-08-14 18:06:49 +00:00
_engine = sqlalchemy.create_engine(config.config['database'])
sessionmaker = sqlalchemy.orm.sessionmaker(bind=_engine)
session = sqlalchemy.orm.scoped_session(sessionmaker)
2016-05-08 17:41:35 +00:00
reset_query_count = QueryCounter.reset
get_query_count = QueryCounter.get
2016-08-14 18:06:49 +00:00
sqlalchemy.event.listen(
_engine, 'after_execute', lambda *args: QueryCounter.bump())