Hay una biblioteca elegante para escribir la condición de verificación de punto final del servicio:healthcheck .
Puede usarlo en lugar de crear manualmente un punto final porque hay algunas funciones listas para usar (por ejemplo, Volcado del entorno ).
En mi aplicación, tenía la misma necesidad, así que implementé verificar si la base de datos responde
app = Flask(__name__)
# wrap the flask app and give a heathcheck url
health = HealthCheck(app, "/healthcheck")
def health_database_status():
is_database_working = True
output = 'database is ok'
try:
# to check database we will execute raw query
session = DatabaseSession.get_database_session()
session.execute('SELECT 1')
except Exception as e:
output = str(e)
is_database_working = False
return is_database_working, output
health.add_check(health_database_status)
Como veo, en su aplicación puede ejecutar la consulta con db.engine.execute('SELECT 1')
.