← Back to Tutorials

17. Monitoring Usage

Account Usage Views

Query SNOWFLAKE.ACCOUNT_USAGE schema:

-- Warehouse metering
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.WAREHOUSE_METERING_HISTORY;

-- Storage usage
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.STORAGE_USAGE;

-- Query history
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY
  WHERE DATABASE_NAME = 'SALES_DB';

-- Login history
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.LOGIN_HISTORY;

-- Auto-cluster history
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.AUTOMATIC_CLUSTERING_HISTORY;

INFORMATION_SCHEMA

SELECT * FROM INFORMATION_SCHEMA.TABLES;
SELECT * FROM INFORMATION_SCHEMA.COLUMNS;
SELECT * FROM INFORMATION_SCHEMA.STAGES;

Monitoring Best Practices

-- Create resource monitor
CREATE RESOURCE MONITOR daily_cap
  WITH CREDIT_QUOTA = 100
  FREQUENCY = DAILY
  START_TIMESTAMP = IMMEDIATELY
  TRIGGERS ON 80% DO NOTIFY
           ON 100% DO SUSPEND;

ALTER WAREHOUSE my_wh SET RESOURCE_MONITOR = daily_cap;
✏️ Exercise: Create a resource monitor with 50-credit daily quota and a suspend trigger at 100%. Apply it to a warehouse.