#!/usr/bin/env python3 from flask import Flask from flask_restful import Api from healthcheck import HealthCheck from utils import Config, register_all_error_handlers, health_database_status from model import db from schemas import ma from resources import MealBaseResource app = Flask(__name__) app.config.from_object(Config) api = Api(app) health = HealthCheck() ma.init_app(app) db.init_app(app) @app.before_first_request def init_db(): db.create_all() api.add_resource(MealBaseResource, "/meals") health.add_check(health_database_status) register_all_error_handlers(app) app.add_url_rule("/healthz", "healthcheck", view_func=lambda: health.run()) if __name__ != '__main__': import logging gunicorn_logger = logging.getLogger('gunicorn.error') app.logger.handlers = gunicorn_logger.handlers app.logger.setLevel(gunicorn_logger.level)