Uso do monitoramento para um aplicativo

Este tópico descreve como os provedores podem monitorar a integridade do app de consumidor para um Snowflake Native App.

Monitoramento da integridade do aplicativo de consumidor

Seu aplicativo pode relatar o status de integridade para o Snowflake, o que permite monitorar a integridade das instâncias de consumidor do seu aplicativo.

Para reportar o status de integridade, seu app usa a função SYSTEM$REPORT_HEALTH_STATUS(VARCHAR) definida pelo sistema, passando o status de integridade como um valor de enumeração:

  • OK: a instância de consumidor está íntegra.

  • FAILED: a instância de consumidor está em estado de erro.

  • PAUSED: O consumidor pausou o aplicativo manualmente.

Você pode usar os campos LAST_HEALTH_STATUS e LAST_HEALTH_STATUS_UPDATED_ON da exibição APPLICATION_STATE para monitorar a integridade das instâncias de consumidor do seu aplicativo. O campo LAST_HEALTH_STATUS contém o valor mais recente passado pelo app em execução na conta do consumidor.

O exemplo de código a seguir demonstra o uso da exibição APPLICATION_STATE para recuperar o status de integridade de todas as instâncias de consumidor do seu aplicativo:

SELECT
    CONSUMER_ORGANIZATION_NAME,
    CONSUMER_ACCOUNT_NAME,
    LAST_HEALTH_STATUS,
    LAST_HEALTH_STATUS_UPDATE_TIME
FROM
    SNOWFLAKE.ACCOUNT_USAGE.APPLICATION_STATE
WHERE
    PROVIDER_ORG_NAME = '<your_provider_org_name>'
    AND APPLICATION_NAME = '<your_app_name>'
ORDER BY
    LAST_HEALTH_STATUS_UPDATE_TIME DESC;
Copy

A consulta anterior pode retornar resultados semelhantes aos seguintes:

CONSUMER_ORG_NAME    CONSUMER_ACCOUNT_NAME    LAST_HEALTH_STATUS    LAST_HEALTH_STATUS_UPDATE_TIME
------------------   ---------------------    ------------------    -------------------------------
consumer_org_1       consumer_account_1       OK                    2024-01-15 10:30:00.000
consumer_org_2       consumer_account_2       FAILED                2024-01-15 09:45:00.000
consumer_org_3       consumer_account_3       PAUSED                2024-01-14 16:20:00.000