sql >> Database >  >> RDS >> Mysql

Flask-SQLAalchemy controleert of de databaseserver reageert

Er is een mooie bibliotheek voor het schrijven van de eindpuntcontroleconditie van de service - healthcheck .

U kunt het gebruiken in plaats van handmatig een eindpunt te maken, omdat er enkele standaardfuncties zijn (bijvoorbeeld EnvironmentDump ).

In mijn applicatie had ik dezelfde behoefte, dus ik implementeerde check of database responsive is

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)

Zoals ik zie, kun je in je applicatie een query uitvoeren met db.engine.execute('SELECT 1') .



  1. Algoritme om de meest populaire plaatsen uit de database te selecteren

  2. Hoe combineer ik deze 3 queries in één MySQL-query?

  3. Tips voor het repareren van SQL Server-indexfragmentatie

  4. Dubbele sleutel bij schrijven of bijwerken?