Verwenden der Überwachung für eine App¶
Unter diesem Thema wird beschrieben, wie Anbietende den Zustand von Verbraucheranwendungen für eine Snowflake Native App überwachen können
Zustand von Verbraucheranwendungen überwachen¶
Ihre Anwendung kann ihren Integritätsstatus an Snowflake melden, sodass Sie den Zustand der Verbraucherinstanzen Ihrer App überwachen können.
Um den Integritätsstatus zu melden, verwendet Ihre App die vom System definierte Funktion SYSTEM$REPORT_HEALTH_STATUS(VARCHAR), die den Integritätsstatus als Enumerationswert übergibt:
OK: Die Verbraucherinstanz ist funktionsfähig.FAILED: Die Verbraucherinstanz weist einen Fehlerstatus auf.PAUSED: Der Verbrauchende hat die App manuell angehalten.
Sie können die Felder LAST_HEALTH_STATUS und LAST_HEALTH_STATUS_UPDATED_ON der APPLICATION_STATE-Ansicht verwenden, um den Zustand der Verbraucherinstanzen Ihrer App zu überwachen. Das Feld LAST_HEALTH_STATUS enthält den neuesten Wert, der von der App übergeben wurde, die im Verbraucherkonto ausgeführt wird.
Das folgende Codebeispiel veranschaulicht die Verwendung der APPLICATION_STATE-Ansicht, um den Integritätsstatus aller Verbraucherinstanzen Ihrer App abzurufen:
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;
Die vorangegangene Abfrage kann Ergebnisse ähnlich den folgenden zurückgeben:
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