对应用程序使用监控¶
本主题介绍了提供商如何监控使用者应用程序在 Snowflake Native App 上的运行状况。
监控使用者应用程序运行状况¶
您的应用程序可以向 Snowflake 报告其运行状况,Snowflake 允许您监控应用程序使用者实例的运行状况。
要报告运行状况,应用程序会使用系统定义的 SYSTEM$REPORT_HEALTH_STATUS(VARCHAR) 函数,并将运行状况作为枚举值传入:
OK:选择使用 时默认使用的角色和仓库。使用者实例运行正常。FAILED:选择使用 时默认使用的角色和仓库。使用者实例处于错误状态。PAUSED:选择使用 时默认使用的角色和仓库。使用者手动暂停了该应用程序。
您可以通过 APPLICATION_STATE 视图 中的 LAST_HEALTH_STATUS 和 LAST_HEALTH_STATUS_UPDATED_ON 字段来监控应用程序的使用者实例的运行状况。LAST_HEALTH_STATUS 字段具有使用者账户中运行的应用程序传入的最新值。
以下代码示例演示了如何使用 APPLICATION_STATE 视图来检索应用程序的所有使用者实例的运行状况:
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;
前面的查询可能会返回类似于以下内容的结果:
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