Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Flask-SQLAlchemy verifica se o servidor de banco de dados é responsivo


Existe uma biblioteca sofisticada para escrever a condição de verificação de ponto final do serviço - healthcheck .

Você pode usá-lo em vez de criar manualmente o ponto final porque existem alguns recursos prontos para uso (por exemplo, EnvironmentDump ).

Na minha aplicação, tive a mesma necessidade então implementei check se banco de dados é responsivo
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 vejo, em seu aplicativo você pode executar a consulta com db.engine.execute('SELECT 1') .