Skip to content
Snippets Groups Projects
Commit cc365444 authored by Gavin M. Roy's avatar Gavin M. Roy
Browse files

Add more functionality to the example

parent 999a1a79
No related branches found
No related tags found
No related merge requests found
import datetime
import logging
from queries import pool
import queries
from tornado import gen, ioloop, web
 
 
class ExampleHandler(web.RequestHandler):
 
def initialize(self):
self.session = queries.TornadoSession()
SQL = 'SELECT * FROM pg_stat_activity'
 
@gen.coroutine
def get(self):
try:
result = yield self.session.query('SELECT * FROM names')
result = yield self.application.session.query(self.SQL)
except queries.OperationalError as error:
logging.error('Error connecting to the database: %s', error)
raise web.HTTPError(503)
 
self.finish({'data': result.items()})
rows = []
for row in result.items():
row = dict([(k, v.isoformat()
if isinstance(v, datetime.datetime) else v)
for k, v in row.items()])
rows.append(row)
result.free()
self.finish({'pg_stat_activity': rows})
class ReportHandler(web.RequestHandler):
 
@gen.coroutine
def get(self):
self.finish(pool.PoolManager.report())
 
application = web.Application([
(r'/', ExampleHandler),
])
 
if __name__ == '__main__':
logging.basicConfig(level=logging.INFO)
application.listen(8888)
logging.basicConfig(level=logging.DEBUG)
application = web.Application([
(r'/', ExampleHandler),
(r'/report', ReportHandler)
], debug=True)
application.session = queries.TornadoSession()
application.listen(8000)
ioloop.IOLoop.instance().start()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment