This page provides an overview of what you can do with the Snowflake integration. The documentation pages only for a limited number of integrations contain the setup steps and instructions. If you do not see the setup steps here, navigate to the Operations for Applications GUI. The detailed instructions for setting up and configuring all integrations, including the Snowflake integration are on the Setup tab of the integration.
- Log in to your Operations for Applications instance.
- Click Integrations on the toolbar, search for and click the Snowflake tile.
- Click the Setup tab and you will see the most recent and up-to-date instructions.
Snowflake
Snowflake is a full-featured native integration that offers agentless data ingestion of Snowflake usage metric data as well as a predefined dashboard.
In addition to setting up the metrics flow, this integration also installs a dashboard. Here’s a preview of the dashboard:
Add a Snowflake Integration
Use the Snowflake integration to monitor a Snowflake database and the ACCOUNT_USAGE schema.
To register a new Snowflake instance and start monitoring the Snowflake usage, you must give VMware Aria Operations for Applications (formerly known as Tanzu Observability by Wavefront) access to your Snowflake account. The overall process involves:
- Generating a private and a public key. Snowflake supports key-pair authentication for enhanced authentication security.
- Creating a custom role that will monitor the Snowflake usage, for example
MYROLE
. - Granting the role with the
usage
andmonitor
privileges on the warehouse. - Assigning the role to a new or an already existing user who has the public key assigned.
You can follow the steps provided in our GUI.
After you generate the private and the public keys and create a user with the correct permissions, to register your Snowflake integration, follow these steps:
- In the Name text box, provide a meaningful name.
- In the Account ID text box, enter the Snowflake account identifier with the account name,
<orgname>-<account_name>
. For information about the Snowflake account identifiers, see the Snowflake documentation. -
Enter the Snowflake user name in the User Name text box.
-
Enter the private key in the Private Key text box.
The private key that you enter must begin with the line
----BEGIN PRIVATE KEY----
and end with the line----END PRIVATE KEY----
. The private key is securely stored and never exposed except for read-only access to the Snowflake APIs. - In the Role and Warehouse text boxes, enter the role and the warehouse assigned to the user. If you don’t specify a role and warehouse, the default ones that are assigned to the user will be used.
- (Optional) In the Metric Allow List text box, add metrics to a metrics allow list by using a regular expression. For example:
- To monitor only the daily credit usage and a cloud services rebate for an account within the last 365 days (1 year), enter:
^snowflake.metering-daily-history.*$
- To monitor the hourly credit usage for a single warehouse (or all the warehouses in your account) within a specified date range, enter:
^snowflake.warehouse-metering-history.*$
- To monitor the average daily storage usage, in bytes, for a single database (or all the databases in your account) within a specified date range, enter:
^snowflake.database-usage-storage-usage-history.*$
- To monitor only the daily credit usage and a cloud services rebate for an account within the last 365 days (1 year), enter:
- (Optional) Change the Service Refresh Rate. The default is
60
minutes. - Click Register.
Metrics
Metric Name | Description |
---|---|
snowflake.metering-daily-history.credits-adjustment-cloud-services | Number of credits adjusted for included cloud services in the day. This is a negative value, for example, -9. |
snowflake.metering-daily-history.credits-billed | Total number of credits billed for the account in the day. |
snowflake.metering-daily-history.credits-used | Sum of credits-used-compute and credits-used-cloud-services. |
snowflake.metering-daily-history.credits-used-cloud-services | Number of credits billed for cloud services in the day. |
snowflake.metering-daily-history.credits-used-compute | Number of credits billed for virtual warehouses in the day. |
snowflake.metering-history.credits-used | Total number of credits used for the account in the hour. |
snowflake.metering-history.credits-used-cloud-services | Number of credits used for cloud services in the hour. |
snowflake.metering-history.credits-used-compute | Number of credits used for virtual warehouses in the hour. |
snowflake.metering-history.files | When the service type is pipe, indicates number of files loaded. |
snowflake.metering-history.bytes | If the service type is auto_clustering, indicates the number of bytes reclustered. If the service type is pipe, indicates the number of bytes inserted. |
snowflake.warehouse-metering-history.credits-used | Total number of credits used for the warehouse in the hour. |
snowflake.warehouse-metering-history.credits-used-cloud-services | Number of credits used for cloud services in the hour. |
snowflake.warehouse-metering-history.credits-used-compute | Number of credits used for the warehouse in the hour. |
snowflake.auto-recluster.bytes-reclustered.avg | Average bytes reclustered. |
snowflake.auto-recluster.bytes-reclustered.sum | Total bytes reclustered. |
snowflake.auto-recluster.credits-used.avg | Average number of credits billed for automatic clustering. |
snowflake.auto-recluster.credits-used.sum | Total number of credits billed for automatic clustering. |
snowflake.auto-recluster.rows-reclustered.avg | Average number of rows reclustered. |
snowflake.auto-recluster.rows-reclustered.sum | Total number of rows reclustered. |
snowflake.database-usage-storage-usage-history.average-database-bytes | The number of bytes of database storage used, including data in Time Travel. |
snowflake.database-usage-storage-usage-history.average-failsafe-bytes | Number of bytes of Fail-safe storage used. |
snowflake.pipe.bytes-inserted.avg | Average number of bytes loaded. |
snowflake.pipe.bytes-inserted.sum | Total number of bytes loaded. |
snowflake.pipe.credits-used.avg | Average number of credits billed for Snowpipe data loads. |
snowflake.pipe.credits-used.sum | Total number of credits billed for Snowpipe data loads. |
snowflake.pipe.files-inserted.avg | Average number of files loaded. |
snowflake.pipe.files-inserted.sum | Total number of files loaded. |
snowflake.query.blocked.sum | Total queries blocked by a concurrent DML. |
snowflake.query.bytes-deleted.avg | Average number of bytes deleted by queries. |
snowflake.query.bytes-scanned.avg | Average number of bytes scanned by queries. |
snowflake.query.bytes-spilled.local.avg | Average volume of data spilled to local disk. |
snowflake.query.bytes-spilled.remote.avg | Average volume of data spilled to remote disk. |
snowflake.query.bytes-written.avg | Avearge number of bytes written by queries. |
snowflake.query.compilation-time.avg | Average compilation time. |
snowflake.query.executed.sum | Total number of executed queries. |
snowflake.query.execution-time.avg | Average execution time. |
snowflake.query.queued-overload.sum | Total queries blocked due to warehouse overload. |
snowflake.query.queued-provision.sum | Total queries blocked due to provisioning. |
snowflake.storage-usage.failsafe-bytes | Number of bytes of data in Fail-safe. |
snowflake.storage-usage.stage-bytes | Number of bytes of stage storage used by files in all internal stages (named, table, and user). |
snowflake.storage-usage.storage-bytes | Number of bytes of table storage used, including bytes for data currently in Time Travel. |
snowflake.table-storage.active-bytes.avg | Bytes owned by (and billed to) this table that are in the active state for the table. |
snowflake.table-storage.failsafe-bytes.avg | Bytes owned by (and billed to) this table that are in the Fail-safe state for the table. |
snowflake.table-storage.retained-bytes.avg | Bytes owned by (and billed to) this table that are retained after deletion because they are referenced by one or more clones of this table. |
snowflake.table-storage.time-travel-bytes.avg | Bytes owned by (and billed to) this table that are in the Time Travel state for the table. |
snowflake.logins.fail.count | Count of failed logins. |
snowflake.logins.success.count | Count of successful logins. |
snowflake.logins.total | Total number of logins. |