sql >> Databasteknik >  >> RDS >> Mysql

Flask-SQLAlchemy kontrollera om databasservern är responsiv

Det finns ett fint bibliotek för att skriva slutpunktskontrollvillkor för tjänsten - healthcheck .

Du kan använda det istället för att manuellt skapa slutpunkt eftersom det finns vissa funktioner direkt (till exempel EnvironmentDump ).

I min applikation hade jag samma behov så jag implementerade check om databasen är responsiv

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)

Som jag ser kan du i din applikation köra en fråga med db.engine.execute('SELECT 1') .



  1. PostgreSQL - Lägg till nyckel till varje objekt i en JSONB-array

  2. Hur extraherar man det n:te ordet och räknar ordförekomster i en MySQL-sträng?

  3. Lägga till, ta bort och redigera användare av admin i php

  4. MySQL subselect prestanda fråga?