import logging import logging.config from app import app as application from data.model import db as model_db # Turn off debug logging for boto logging.getLogger('boto').setLevel(logging.CRITICAL) from endpoints.api import api_bp from endpoints.index import index from endpoints.web import web from endpoints.tags import tags from endpoints.registry import registry from endpoints.webhooks import webhooks from endpoints.realtime import realtime from endpoints.callbacks import callback logger = logging.getLogger(__name__) application.register_blueprint(web) application.register_blueprint(callback, url_prefix='/oauth2') application.register_blueprint(index, url_prefix='/v1') application.register_blueprint(tags, url_prefix='/v1') application.register_blueprint(registry, url_prefix='/v1') application.register_blueprint(api_bp, url_prefix='/api') application.register_blueprint(webhooks, url_prefix='/webhooks') application.register_blueprint(realtime, url_prefix='/realtime') def close_db(exc): db = model_db if not db.is_closed(): logger.debug('Disconnecting from database.') db.close() application.teardown_request(close_db) if __name__ == '__main__': logging.config.fileConfig('conf/logging_local.conf', disable_existing_loggers=False) profile = logging.getLogger('application.profiler') profile.debug('This is a profiling statement') application.run(port=5000, debug=True, threaded=True, host='0.0.0.0')