Skip to main content

Snowflake Receiver

Status Available in: contrib Maintainers: @dmitryax, @shalper2 Source: opentelemetry-collector-contrib

Supported Telemetry

Metrics

Overview

Configuration

The following settings are required:
  • username (no default): Specifies username used to authenticate with Snowflake.
  • password (no default): Specifies the password associated with designated username. Used to authenticate with Snowflake.
  • account (no default): Specifies the account from which metrics are to be gathered.
  • warehouse (no default): Specifies the warehouse, or unit of computer, designated for the metric gathering queries. Must be an existing warehouse in your Snowflake account.
The following settings are optional:
  • metrics (default: see DefaultMetricSettings): Controls the enabling/disabling of specific metrics. See in-depth documentation on the allowable metrics.
  • schema (default: β€˜ACCOUNT_USAGE’): Snowflake DB schema containing usage statistics and metadata to be monitored.
  • database (default: β€˜SNOWFLAKE’): Snowflake DB containing schema with usage statistics and metadata to be monitored.
  • role (default: β€˜ACCOUNTADMIN’): Role associated with the username designated above. By default admin privileges are required to access most/all of the usage data.
  • collection_interval (default: 30m): Collection interval for metrics receiver. The value for this setting must be readable by golang’s time.ParseDuration.
Example:
receivers:
  snowflake:
    username: snowflakeuser
    password: securepassword
    account: bigbusinessaccount
    warehouse: metricWarehouse
    collection_interval: 5m
    metrics:
      snowflake.database.bytes_scanned.avg:
        enabled: true
      snowflake.query.bytes_deleted.avg:
        enabled: false
The full list of settings exposed for this receiver are documented in config.go with a detailed sample configuration in testdata/config.yaml

Metrics

Metric NameDescriptionUnitTypeAttributes
❌ snowflake.billing.cloud_service.totalReported total credits used in the cloud service over the last 24 hour window.{credits}Gaugeservice_type
❌ snowflake.billing.total_credit.totalReported total credits used across account over the last 24 hour window.{credits}Gaugeservice_type
❌ snowflake.billing.virtual_warehouse.totalReported total credits used by virtual warehouse service over the last 24 hour window.{credits}Gaugeservice_type
❌ snowflake.billing.warehouse.cloud_service.totalCredits used across cloud service for given warehouse over the last 24 hour window.{credits}Gaugewarehouse_name
❌ snowflake.billing.warehouse.total_credit.totalTotal credits used associated with given warehouse over the last 24 hour window.{credits}Gaugewarehouse_name
❌ snowflake.billing.warehouse.virtual_warehouse.totalTotal credits used by virtual warehouse service for given warehouse over the last 24 hour window.{credits}Gaugewarehouse_name
βœ… snowflake.database.bytes_scanned.avgAverage bytes scanned in a database over the last 24 hour window.ByGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.database.query.countTotal query count for database over the last 24 hour window.1Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.logins.totalTotal login attempts for account over the last 24 hour window.1Gaugeerror_message, reported_client_type, is_success
❌ snowflake.pipe.credits_used.totalSnow pipe credits contotaled over the last 24 hour window.{credits}Gaugepipe_name
βœ… snowflake.query.blockedBlocked query count for warehouse over the last 24 hour window.1Gaugewarehouse_name
βœ… snowflake.query.bytes_deleted.avgAverage bytes deleted in database over the last 24 hour window.ByGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.query.bytes_spilled.local.avgAverage bytes spilled (intermediate results do not fit in memory) by local storage over the last 24 hour window.ByGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.query.bytes_spilled.remote.avgAverage bytes spilled (intermediate results do not fit in memory) by remote storage over the last 24 hour window.ByGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.query.bytes_written.avgAverage bytes written by database over the last 24 hour window.ByGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.query.compilation_time.avgAverage time taken to compile query over the last 24 hour window.sGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.query.data_scanned_cache.avgAverage percentage of data scanned from cache over the last 24 hour window.1Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.query.executedExecuted query count for warehouse over the last 24 hour window.1Gaugewarehouse_name
βœ… snowflake.query.execution_time.avgAverage time spent executing queries in database over the last 24 hour window.sGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.query.partitions_scanned.avgNumber of partitions scanned during query so far over the last 24 hour window.1Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.query.queued_overloadOverloaded query count for warehouse over the last 24 hour window.1Gaugewarehouse_name
βœ… snowflake.query.queued_provisionNumber of compute resources queued for provisioning over the last 24 hour window.1Gaugewarehouse_name
βœ… snowflake.queued_overload_time.avgAverage time spent in warehouse queue due to warehouse being overloaded over the last 24 hour window.sGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.queued_provisioning_time.avgAverage time spent in warehouse queue waiting for resources to provision over the last 24 hour window.sGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
βœ… snowflake.queued_repair_time.avgAverage time spent in warehouse queue waiting for compute resources to be repaired over the last 24 hour window.sGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.rows_deleted.avgNumber of rows deleted from a table (or tables) over the last 24 hour window.{rows}Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.rows_inserted.avgNumber of rows inserted into a table (or tables) over the last 24 hour window.{rows}Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.rows_produced.avgAverage number of rows produced by statement over the last 24 hour window.{rows}Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.rows_unloaded.avgAverage number of rows unloaded during data export over the last 24 hour window.{rows}Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.rows_updated.avgAverage number of rows updated in a table over the last 24 hour window.{rows}Gaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size
❌ snowflake.session_id.countDistinct session id’s associated with snowflake username over the last 24 hour window.1Gaugeuser_name
❌ snowflake.storage.failsafe_bytes.totalNumber of bytes of data in Fail-safe.ByGauge
βœ… snowflake.storage.stage_bytes.totalNumber of bytes of stage storage used by files in all internal stages (named, table, user).ByGauge
βœ… snowflake.storage.storage_bytes.totalNumber of bytes of table storage used, including bytes for data currently in Time Travel.ByGauge
βœ… snowflake.total_elapsed_time.avgAverage elapsed time over the last 24 hour window.sGaugeschema_name, execution_status, error_message, query_type, warehouse_name, database_name, warehouse_size

Attributes

Attribute NameDescriptionTypeValues
database_nameName of database being queried (default is snowflake).string
error_messageError message reported by query if present.string
execution_statusExecution status of query being reported.string
is_successLogin status (success or failure).string
pipe_nameName of snowpipe.string
query_typeType of query performed.string
reported_client_typeClient type used for attempt.string
schema_nameName of schema associated with query result.string
service_typeService type associated with metric query.string
user_nameUsername in query being reported.string
warehouse_nameName of warehouse in query being reported on.string
warehouse_sizeSize of warehouse being reported on.string

Resource Attributes

Attribute NameDescriptionTypeEnabled
snowflake.account.nameSnowflake account being used by receiver.stringβœ…

Configuration

Example Configuration

snowflake:
  # required settings
  username: snowflakeuser
  password: securepassword
  account: bigbusinessaccount
  warehouse: metricWarehouse
  # optional settings (i.e. have defaults)
  collection_interval: 18m
  metrics:
    snowflake.database.bytes_scanned.avg:
      enabled: true
    snowflake.query.bytes_deleted.avg:
      enabled: false
  role: customMonitoringRole

Last generated: 2026-04-13