- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Snowflake 인프라스트럭처 및 데이터 검색을 효과적으로 모니터링하고 최적화하기는 어려울 수 있습니다. 문제가 발생하여 비효율적 리소스 활용, 더 높아진 비용, 고객 경험 저하 등으로 이어질 수 있습니다.
Datadog 의 Snowflake 통합을 사용하면 장기 실행 쿼리를 발견하여 성능을 개선하고 비용을 절감하며, 실시간 보안 위협을 식별하고, Snowpark 워크로드를 모니터링할 수 있습니다.
Snowflake 데이터를 구문 분석한 후 Datadog는 즉기 사용 가능한 개요 대시보드를 수집한 전체 리소스에 대한 인사이트로 채웁니다. 이러한 대시보드는 또한 추천 모니터를 제공하여 Snowpark 실행 실패나 로그인 시도 횟수 이상과 같은 이벤트에 대한 알림을 받을 수 있도록 해줍니다.
설치 단계가 필요하지 않습니다.
Snowflake 통합 타일의 계정 URL 필드에 Snowflake 계정 URL을 입력합니다.
리소스 컬렉션 탭 에서 수집하려는 리소스를 활성화합니다.
하단 표는 수집되는 메트릭 유형과 관련 메트릭 접두어에 대해 설명합니다.
유형 | 설명 | 수집된 메트릭 접두어 |
---|---|---|
계정 사용량 | 계정 수준에서 사용량, 크레딧 사용량, 쿼리 메트릭을 보관합니다. 매 시간 수집됩니다. | snowflake.auto_recluster snowflake.billing snowflake.data_transfer snowflake.logins snowflake.pipe snowflake.query snowflake.replication snowflake.storage snowflake.storage.database snowflake.storage.table |
조직 사용량 | 조직 수준에서 크레딧 사용량, 데이터 전송 기록 및 예산 메트릭을 보관합니다. 매 시간 수집됩니다. | snowflake.organization |
아래 표에서는 수집된 로그 유형과 포함된 Snowflake 테이블에 대해 설명합니다.
유형 | 설명 | 필수 테이블 |
쿼리 기록 | 쿼리 실행 기록입니다. 쿼리 기록 로그와 액세스 기록 로그를 함께 사용하면 쿼리와 쿼리 내역을 통해 데이터가 사용되는 방식에 대한 인사이트를 얻을 수 있습니다. | SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY |
보안 | Cloud SIEM과 함께 이러한 로그를 활용하여 사용자 환경에서 보안 위협을 보다 효율적으로 탐지하고 이에 대응할 수 있습니다. | SNOWFLAKE.ACCOUNT_USAGE.LOGIN_HISTORY SNOWFLAKE.ACCOUNT_USAGE.SESSIONS SNOWFLAKE.ACCOUNT_USAGE.GRANTS_TO_USERS SNOWFLAKE.ACCOUNT_USAGE.DATA_TRANSFER_HISTORY SNOWFLAKE.ACCOUNT_USAGE.STAGES |
이벤트 테이블 | 함수 및 기타 절차에서 수집된 메시지와 이벤트 데이터를 보여줍니다. 허가(GRANT) 권한이 추가로 필요합니다. | 커스텀 이벤트 테이블 |
클라우드 비용 관리를 사용 설정하여 SNOWFLAKE.ORGANIZATION_USAGE.USAGE_IN_CURRENCY_DAILY 테이블에서 집계된 Snowflake 비용 메트릭을 받습니다. 이 메트릭을 클라우드 비용 관리와 함께 사용하여 비용 및 사용량에 대한 추가 인사이트를 얻을 수 있습니다.
권장 창고 설정
-- Snowflake 사용량 모니터링을 위한 새로운 역할을 생성하세요. 역할의 이름은 커스터마이즈할 수 있습니다.
create role DATADOG;
-- SNOWFLAKE 데이터베이스에서 새로운 역할에 대한 권한을 허가합니다.
grant imported privileges on database SNOWFLAKE to role DATADOG;
-- DATADOG 역할에 기본 웨어하우스 사용량에 대한 권한을 허가합니다..
grant usage on warehouse <WAREHOUSE> to role DATADOG;
-- 새 역할에 다음 ACCOUNT_USAGE 보기에 대한 권한을 부여합니다. Snowflake 계정 사용량 로그 및 메트릭을 수집하려면 수행합니다.
grant database role SNOWFLAKE.OBJECT_VIEWER to role DATADOG;
grant database role SNOWFLAKE.USAGE_VIEWER to role DATADOG;
grant database role SNOWFLAKE.GOVERNANCE_VIEWER to role DATADOG;
grant database role SNOWFLAKE.SECURITY_VIEWER to role DATADOG;
-- 새 역할에 ORGANIZATION_USAGE_VIEWER 권한을 부여합니다. Snowflake 조직 사용량 메트릭을 수집하려면 수행합니다.
grant database role SNOWFLAKE.ORGANIZATION_USAGE_VIEWER to role DATADOG;
-- 새 역할에 ORGANIZATION_BILLING_VIEWER 권한을 부여합니다. Snowflake 비용 데이터를 수집하려면 이를 수행합니다.
grant database role SNOWFLAKE.ORGANIZATION_BILLING_VIEWER to role DATADOG;
-- 이벤트 테이블의 데이터베이스, 스키마와 테이블에 대한 사용량 권한을 부여합니다.
grant usage on database <EVENT_TABLE_DATABASE> to role DATADOG;
grant usage on schema <EVENT_TABLE_DATABASE>.<EVENT_TABLE_SCHEMA> to role DATADOG;
grant select on table <EVENT_TABLE_DATABASE>.<EVENT_TABLE_SCHEMA>.<EVENT_TABLE_NAME> to role DATADOG;
grant application role SNOWFLAKE.EVENTS_VIEWER to role DATADOG;
grant application role SNOWFLAKE.EVENTS_ADMIN to role DATADOG;
-- 사용자를 생성합니다.
create user <USERNAME>
LOGIN_NAME = <USERNAME>
password = '<PASSWORD>'
default_warehouse =<WAREHOUSE>
default_role = DATADOG;
-- 사용자에게 모니터 역할을 부여합니다.
grant role DATADOG to user <USERNAME>
Snowflake 통합은 커스텀 쿼리 를 지원하며 커스텀 메트릭를 수집합니다. 사용자는 커스텀 SQL 쿼리를 작성하여 특정 데이터를 추출하고 Datadog에서 메트릭 및 메트릭 태그로 확인할 수 있습니다.
기본적으로 통합은 공유 SNOWFLAKE
데이터베이스 및 ACCOUNT_USAGE
스키마에 연결됩니다. ACCOUNT_USAGE
스키마 외부의 테이블을 쿼리하는 경우에는 설정된 역할에 해당 테이블에 액세스할 수 있는 적절한 권한이 있는지 확인하세요.
아래 표는 커스텀 메트릭을 정의하는 데 사용되는 필드를 설명합니다.
필드 | 설명 | 필수 |
---|---|---|
커스텀 메트릭 식별자 | 커스텀 메트릭의 식별자로, 각 계정의 각기 다른 커스텀 메트릭을 각각의 커스텀 쿼리 에 연결하는 데 사용됩니다. | Yes |
쿼리 | 실행할 SQL입니다. 간단한 문이나 여러 줄의 스크립트일 수 있습니다. 결과의 모든 행이 평가됩니다. | Yes |
메타데이터 열 | 각 열을 왼쪽에서 오른쪽으로 순차적으로 정렬한 목록입니다. 각 열에는 두 개의 필수 필드가 있습니다: - 커스텀 열 이름**: metric_prefix 에 추가하여 전체 메트릭 이름을 형성하는 접미사입니다. 예를 들어 my_custom_metric.count 는 전체 메트릭 이름 snowflake.my_custom_metric.count 이 됩니다. 유형이 Tag Key 로 지정된 경우, 열은 이 쿼리에서 수집한 모든 메트릭에 태그로 적용됩니다.- 메타데이터 유형: 제출 방법(예: 게이지, 카운트 또는 비율)입니다. 이 열에 있는 항목의 이름과 값( <NAME>:<ROW_VALUE> )을 사용해 행에 있는 각 매트릭을 태그로 설정할 수도 있습니다. | Yes |
참고:
예:
결과를 확인하려면 메트릭 요약에서 메트릭을 사용하여 검색하세요.
snowflake.storage.storage_bytes.total (gauge) | The average number of bytes of table storage used including bytes for data currently in Time Travel. Shown as byte |
snowflake.storage.stage_bytes.total (gauge) | The average number of bytes of stage storage used by files in all internal stages. Shown as byte |
snowflake.storage.failsafe_bytes.total (gauge) | The average number of bytes of data in Fail-safe. Shown as byte |
snowflake.storage.database.storage_bytes (gauge) | The average number of bytes of database storage used. Shown as byte |
snowflake.storage.database.failsafe_bytes (gauge) | The average number of bytes of Fail-safe storage used. Shown as byte |
snowflake.billing.virtual_warehouse.avg (gauge) | The average overall credits billed per hour for virtual warehouses. Shown as unit |
snowflake.billing.virtual_warehouse.sum (gauge) | The sum of overall credits billed for virtual warehouses. Shown as unit |
snowflake.billing.cloud_service.avg (gauge) | The average overall credits billed per hour for cloud services. Shown as unit |
snowflake.billing.cloud_service.sum (gauge) | The total overall credits billed for cloud services. Shown as unit |
snowflake.billing.total_credit.avg (gauge) | The average overall of credits used per hour for the account. This is the sum of snowflake.billing.cloudservice and snowflake.billing.virtualwarehouses. Shown as unit |
snowflake.billing.total_credit.sum (gauge) | The total overall of credits used for the account. This is the sum of snowflake.billing.cloudservice and snowflake.billing.virtualwarehouses. Shown as unit |
snowflake.billing.warehouse.cloud_service.avg (gauge) | The average credits used per hour for cloud services by warehouse. Shown as unit |
snowflake.billing.warehouse.cloud_service.sum (gauge) | The total credits used for cloud services by warehouse. Shown as unit |
snowflake.billing.warehouse.virtual_warehouse.avg (gauge) | The average credits used per hour by warehouse. Shown as unit |
snowflake.billing.warehouse.virtual_warehouse.sum (gauge) | The total credits used by warehouse. Shown as unit |
snowflake.billing.warehouse.total_credit.avg (gauge) | The average total number of credits used per hour for the warehouse. NOTE: This value does not take into account adjustments which may be higher than your actual credit consumption. Shown as unit |
snowflake.billing.warehouse.total_credit.sum (gauge) | The total number of credits used for the warehouse. NOTE: This value does not take into account adjustments which may be higher than your actual credit consumption. Shown as unit |
snowflake.logins.fail.count (count) | Total failed login attempts. Shown as error |
snowflake.logins.success.count (count) | Total successful login attempts. Shown as success |
snowflake.logins.total (count) | Total number of login attempts. Shown as attempt |
snowflake.query.executed (gauge) | The average number of queries executed. Shown as query |
snowflake.query.queued_overload (gauge) | Average number of queries queued because the warehouse was overloaded. Shown as query |
snowflake.query.queued_provision (gauge) | Average number of queries queued because the warehouse was being provisioned. Shown as query |
snowflake.query.blocked (gauge) | Average number of queries blocked by a transaction lock. Shown as query |
snowflake.query.execution_time (gauge) | Average query execution time. Shown as millisecond |
snowflake.query.compilation_time (gauge) | Average query compilation time. Shown as millisecond |
snowflake.query.bytes_scanned (gauge) | Average query bytes scanned. Shown as byte |
snowflake.query.bytes_written (gauge) | Average query bytes written. Shown as byte |
snowflake.query.bytes_deleted (gauge) | Average query bytes deleted. Shown as byte |
snowflake.data_transfer.bytes.avg (gauge) | Average bytes transferred. Shown as byte |
snowflake.data_transfer.bytes.sum (gauge) | Total bytes transferred. Shown as byte |
snowflake.auto_recluster.credits_used.avg (gauge) | Average credits billed for automatic reclustering. Shown as unit |
snowflake.auto_recluster.credits_used.sum (gauge) | Total credits billed for automatic reclustering. Shown as unit |
snowflake.auto_recluster.bytes_reclustered.avg (gauge) | Average bytes reclustered. Shown as byte |
snowflake.auto_recluster.bytes_reclustered.sum (gauge) | Total bytes reclustered. Shown as byte |
snowflake.auto_recluster.rows_reclustered.avg (gauge) | Average rows reclustered. Shown as row |
snowflake.auto_recluster.rows_reclustered.sum (gauge) | Total rows reclustered. Shown as row |
snowflake.storage.table.active_bytes.avg (gauge) | Average bytes owned by (and billed to) this table that are in the active state. Shown as byte |
snowflake.storage.table.time_travel_bytes.avg (gauge) | Average bytes owned by (and billed to) this table that are in the Time Travel state. Shown as byte |
snowflake.storage.table.failsafe_bytes.avg (gauge) | Average bytes owned by (and billed to) this table that are in the Fail-safe state. Shown as byte |
snowflake.storage.table.retained_bytes.avg (gauge) | Average 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. Shown as byte |
snowflake.pipe.credits_used.avg (gauge) | Average number of credits billed for Snowpipe data loads. Shown as unit |
snowflake.pipe.credits_used.sum (gauge) | Total number of credits billed for Snowpipe data loads. Shown as unit |
snowflake.pipe.bytes_inserted.avg (gauge) | Average number of bytes loaded from Snowpipe. Shown as byte |
snowflake.pipe.bytes_inserted.sum (gauge) | Total number of bytes loaded from Snowpipe. Shown as byte |
snowflake.pipe.files_inserted.avg (gauge) | Average number of files loaded from Snowpipe. Shown as file |
snowflake.pipe.files_inserted.sum (gauge) | Total number of files loaded from Snowpipe. Shown as file |
snowflake.replication.credits_used.avg (gauge) | Average number of credits used for database replication. Shown as unit |
snowflake.replication.credits_used.sum (gauge) | Total number of credits used for database replication. Shown as unit |
snowflake.replication.bytes_transferred.avg (gauge) | Average number of bytes transferred for database replication. Shown as byte |
snowflake.replication.bytes_transferred.sum (gauge) | Total number of bytes transferred for database replication. Shown as byte |
snowflake.query.bytes_spilled.local (gauge) | Avg volume of data spilled to local disk. Shown as byte |
snowflake.query.bytes_spilled.remote (gauge) | Avg volume of data spilled to remote disk. Shown as byte |
snowflake.organization.contract.amount (gauge) | The average amount for the given contract |
snowflake.organization.credit.virtual_warehouse.sum (gauge) | The sum of credits used by warehouse. |
snowflake.organization.credit.virtual_warehouse.avg (gauge) | The average credits used per day by warehouse. |
snowflake.organization.credit.cloud_service.sum (gauge) | The sum of credits billed for cloud services |
snowflake.organization.credit.cloud_service.avg (gauge) | The average overall credits billed for cloud services |
snowflake.organization.credit.cloud_service_adjustment.sum (gauge) | Sum of credits adjusted for included cloud services. |
snowflake.organization.credit.cloud_service_adjustment.avg (gauge) | Average of credits adjusted for included cloud services. |
snowflake.organization.credit.total_credit.sum (gauge) | The sum of overall of credits used for the organization. This is the sum of snowflake.organization.credit.cloudservice.sum and snowflake.organization.credit.virtualwarehouse.sum. |
snowflake.organization.credit.total_credit.avg (gauge) | The average number of overall of credits used for the organization. This is the sum of snowflake.organization.credit.cloudservice.avg and snowflake.organization.credit.virtualwarehouse.avg. |
snowflake.organization.credit.total_credits_billed.sum (gauge) | The total number of credits billed for the account in the day. It is the sum of snowflake.organization.credit.cloudservice.sum, snowflake.organization.credit.virtualwarehouse.sum, and snowflakeweb.organization.credit.cloudservice_adjustment.sum. |
snowflake.organization.credit.total_credits_billed.avg (gauge) | The average number of credits billed for the account in the day. It is the sum of snowflake.organization.credit.cloudservice.avg, snowflake.organization.credit.virtualwarehouse.avg, and snowflakeweb.organization.credit.cloudservice_adjustment.avg. |
snowflake.organization.currency.usage (gauge) | Sum of the total number of credits charged per day. |
snowflake.organization.currency.usage_in_currency (gauge) | Sum of the total amount charged for the day. |
snowflake.organization.warehouse.virtual_warehouse.sum (gauge) | Sum of number of credits used for the warehouse. |
snowflake.organization.warehouse.virtual_warehouse.avg (gauge) | Average number of credits used for the warehouse. |
snowflake.organization.warehouse.cloud_service.avg (gauge) | Average number of credits used for cloud services. |
snowflake.organization.warehouse.cloud_service.sum (gauge) | Sum of credits used for cloud services. |
snowflake.organization.warehouse.total_credit.sum (gauge) | The total number of credits used by the warehouse. Sum of snowflake.organization.warehouse.cloudservice.sum and snowflake.organization.warehouse.totalcredit.sum. |
snowflake.organization.warehouse.total_credit.avg (gauge) | The average total number of credits used by the warehouse. Sum of snowflake.organization.warehouse.cloudservice.avg and snowflake.organization.warehouse.totalcredit.avg |
snowflake.organization.storage.average_bytes (gauge) | Number of bytes of database storage used, including data in Time Travel and Fail-safe. Shown as byte |
snowflake.organization.storage.credits (gauge) | Sum of total number of credits used for all accounts in the organization. Sum of credits used for database storage and stages. |
snowflake.organization.rate.effective_rate (gauge) | The rate after applying any applicable discounts per the contract for the organization. |
snowflake.organization.data_transfer.bytes_transferred (gauge) | Number of bytes transferred during the usage date. Shown as byte |
snowflake.organization.balance.capacity (gauge) | The amount of capacity in currency that is available for use. This is the end of day balance. |
snowflake.organization.balance.on_demand_consumption (gauge) | The amount of consumption at on demand prices that will be invoiced given that all the free usage and capacity balances have been exhausted. This is a negative value (e.g. -250) until the invoice is paid. This is the end of day balance. |
snowflake.organization.balance.rollover (gauge) | The amount of rollover balance in currency that is available for use. At the end of a contract term |
snowflake.organization.balance.free_usage (gauge) | The amount of free usage in currency that is available for use. This is the end of day balance |
Snowflake 웹 통합에는 이벤트가 포함되어 있지 않습니다.
Snowflake 웹 통합에는 서비스 점검이 포함되어 있지 않습니다.
도움이 필요하신가요? Datadog 고객 지원팀에 문의하세요.
이 점검은 Datadog 에이전트를 통해 Snowflake를 모니터링합니다. Snowflake는 SaaS 분석 데이터 웨어하우스이며 클라우드 인프라스트럭처에서 완벽하게 실행됩니다. 이 통합은 크레딧 사용량, 빌링, 스토리지, 쿼리 메트릭 등을 모니터링합니다.
호스트에서 실행되는 Agent에 대해 이 검사를 설치하고 구성하려면 아래 지침을 따르세요.
Snowflake 점검이 Datadog 에이전트 패키지에 포함되어 있습니다.
참고: Datadog 에이전트 v6에서는 파이썬(Python) 2를 사용하여 스노우플레이크 점검을 사용할 수 없습니다. 에이전트 v6에서 Snowflake를 사용하려면 Datadog 에이전트 v6에서 파이썬(Python) 3 사용을 참조하거나 에이전트 v7로 업그레이드하세요.
Snowflake를 모니터링하려면 Datadog 특정 역할과 사용자를 생성하세요. Snowflake에서 다음을 실행하여 ACCOUNT_USAGE 스키마에 대한 액세스 권한이 있는 커스텀 역할을 생성합니다.
참고: 기본적으로 이 통합은 SNOWFLAKE
데이터베이스와 ACCOUNT_USAGE
스키마를 모니터링합니다. ORGANIZATION_USAGE
스키마를 모니터링하는 방법에 대한 자세한 내용은 “Collecting Organization Data"를 참조하세요.
이 데이터베이스는 기본적으로 사용 가능하며 ACCOUNTADMIN
역할 또는 계정 관리자가 부여한 모든 역할의 사용자만 볼 수 있습니다.
use role ACCOUNTADMIN;
grant imported privileges on database snowflake to role SYSADMIN;
use role SYSADMIN;
또는 ACCOUNT_USAGE
에 대한 액세스 권한이 있는 DATADOG
커스텀 역할을 생성할 수 있습니다..
-- Snowflake 사용량을 모니터링하기 위한 새 역할을 만듭니다.
create role DATADOG;
-- SNOWFLAKE 데이터베이스에 대한 권한을 새 역할에 부여합니다.
grant imported privileges on database SNOWFLAKE to role DATADOG;
-- DATADOG 역할에 기본 웨어하우스 대한 사용 권한을 부여합니다.
grant usage on warehouse <WAREHOUSE> to role DATADOG;
-- 사용자를 생성합니다. 기존 사용자를 사용하는 경우 이 단계를 건너뜁니다.
create user DATADOG_USER
LOGIN_NAME = DATADOG_USER
password = '<PASSWORD>'
default_warehouse = <WAREHOUSE>
default_role = DATADOG
default_namespace = SNOWFLAKE.ACCOUNT_USAGE;
-- 사용자에게 모니터 역할을 부여합니다.
grant role DATADOG to user <USER>;
에이전트 설정 디렉터리 루트의 conf.d/
폴더에 있는 snowflake.d/conf.yaml
파일을 편집하여 Snowflake 성능 데이터 수집을 시작합니다. 사용 가능한 모든 설정 옵션은 sample snowflake.d/conf.yaml을 참조하세요.
## @param account - string - required
## Name of your account (provided by Snowflake), including the platform and region if applicable.
## For more information on Snowflake account names,
## see https://docs.snowflake.com/en/user-guide/connecting.html#your-snowflake-account-name
#
- account: <ORG_NAME>-<ACCOUNT_NAME>
## @param username - string - required
## Login name for the user.
#
username: <USER>
## @param password - string - required
## Password for the user
#
password: <PASSWORD>
## @param role - string - required
## Name of the role to use.
##
## By default, the SNOWFLAKE database is only accessible by the ACCOUNTADMIN role. Snowflake recommends
## configuring a role specific for monitoring:
## https://docs.snowflake.com/en/sql-reference/account-usage.html#enabling-account-usage-for-other-roles
#
role: <ROLE>
## @param min_collection_interval - number - optional - default: 15
## This changes the collection interval of the check. For more information, see:
## https://docs.datadoghq.com/developers/write_agent_check/#collection-interval
##
## NOTE: Most Snowflake ACCOUNT_USAGE views are populated on an hourly basis,
## so to minimize unnecessary queries, set the `min_collection_interval` to 1 hour.
#
min_collection_interval: 3600
# @param disable_generic_tags - boolean - optional - default: false
# Generic tags such as `cluster` will be replaced by <INTEGRATION_NAME>_cluster to avoid
# getting mixed with other integration tags.
# disable_generic_tags: true
min_collection_interval
is 1 hour.
Snowflake metrics are aggregated by day, you can increase the interval to reduce the number of queries.기본적으로 이 통합은 ACCOUNT_USAGE
스키마를 모니터링하지만 대신 조직 수준 메트릭을 모니터링하도록 설정할 수 있습니다.
조직 메트릭을 수집하려면 통합 구성에서 스키마 필드를 ORGANIZATION_USAGE
로 변경하고 min_collection_interval
을 43200으로 늘립니다. 대부분의 조직 쿼리에는 최대 24시간의 지연 시간이 있으므로 이렇게 하면 Snowflake에 대한 쿼리 수가 줄어듭니다.
참고: 조직 메트릭을 모니터링하려면, user
에 ORGADMIN
역할이 부여되어 있어야 합니다.
- schema: ORGANIZATION_USAGE
min_collection_interval: 43200
기본적으로 일부 조직 메트릭만 활성화됩니다. 사용 가능한 모든 조직 메트릭을 수집하려면 metric_groups
구성 옵션을 활용하세요.
metric_groups:
- snowflake.organization.warehouse
- snowflake.organization.currency
- snowflake.organization.credit
- snowflake.organization.storage
- snowflake.organization.contracts
- snowflake.organization.balance
- snowflake.organization.rate
- snowflake.organization.data_transfer
또한 계정과 조직 메트릭을 동시에 모니터링할 수 있습니다.
instances:
- account: example-inc
username: DATADOG_ORG_ADMIN
password: '<PASSWORD>'
role: SYSADMIN
schema: ORGANIZATION_USAGE
database: SNOWFLAKE
min_collection_interval: 43200
- account: example-inc
username: DATADOG_ACCOUNT_ADMIN
password: '<PASSWORD>'
role: DATADOG_ADMIN
schema: ACCOUNT_USAGE
database: SNOWFLAKE
min_collection_interval: 3600
여러 Snowflake 환경에 대한 데이터를 수집하려면 각 환경을 snowflake.d/conf.yaml
파일에 인스턴스로 추가하세요. 예를 들어 이름이 DATADOG_SYSADMIN
및 이DATADOG_USER
인 두 명의 사용자에 대한 데이터를 수집해야 하는 경우:
instances:
- account: example-inc
username: DATADOG_SYSADMIN
password: '<PASSWORD>'
role: SYSADMIN
database: EXAMPLE-INC
- account: example-inc
username: DATADOG_USER
password: '<PASSWORD>'
role: DATADOG_USER
database: EXAMPLE-INC
Snowflake에서는 프록시 설정에 대한 환경 변수를 설정할 것을 권장합니다.
snowflake.d/conf.yaml의 init_config
에서 proxy_host
, proxy_port
, proxy_user
및 proxy_password
를 설정할 수도 있습니다.
참고: Snowflake는 프록시 설정을 자동으로 포맷하고 표준 프록시 환경 변수를 설정합니다. 이러한 변수는 도커(Docker), ECS, 쿠버네티스(Kubernetes) 와 같은 오케스트레이터를 포함하여 통합의 모든 요청에도 영향을 미칩니다.
Snowflake에서 비공개 연결(예: AWS PrivateLink)이 활성화되어 있는 경우, account
설정 옵션을 다음 형식으로 업데이트하여 Snowflake 통합을 설정할 수 있습니다.
- account: <ACCOUNT>.<REGION_ID>.privatelink
Snowflake 통합은 커스텀 쿼리를 지원합니다. 기본적으로 통합은 공유 SNOWFLAKE
데이터베이스 및 ACCOUNT_USAGE
스키마에 연결됩니다.
다른 스키마 또는 데이터베이스에서 커스텀 쿼리를 실행하려면 sample snowflake.d/conf.yaml에 다른 인스턴스를 추가하고 database
및 schema
옵션을 지정합니다.
사용자 및 역할에 지정된 데이터베이스 또는 스키마에 대한 액세스 권한이 있는지 확인합니다.
custom_queries
옵션에는 다음과 같은 옵션이 있습니다.
옵션 | 필수 | 설명 |
---|---|---|
쿼리 | Yes | 실행할 SQL입니다. 간단한 문이나 여러 줄의 스크립트일 수 있습니다. 결과의 모든 행이 평가됩니다. 여러 줄 스크립트가 필요한 경우 파이프를 사용합니다. |
컬럼 | Yes | 목록 왼쪽에서 오른쪽으로 순차적으로 정렬된 각 열을 나타냅니다. 필수 데이터는 두 가지입니다. - name **: 전체 메트릭 이름을 형성하기 위해 metric_prefix 에 추가하는 접미어입니다. type 을 tag 로 지정하면 이 열은 대신 이 쿼리에서 수집한 모든 메트릭을 태그로 적용합니다.- type : 제출 메서드(gauge , count , rate 등)입니다. 이 열에 있는 항목의 이름과 값(<NAME>:<ROW_VALUE> )이 있는 행의 각 메트릭을 tag 태그로 설정할 수도 있습니다. |
태그 | No | 각 메트릭에 적용할 정적 태그 목록입니다. |
정의된 columns
항목 중 하나 이상은 메트릭 유형(예: gauge
, count
, rate
)이어야 합니다.
열의 항목 수는 쿼리에서 반환되는 열의 수와 같아야 합니다.
columns
에 정의된 항목의 순서는 쿼리에 반환된 순서와 동일해야 합니다.
custom_queries:
- query: select F3, F2, F1 from Table;
columns:
- name: f3_metric_alias
type: gauge
- name: f2_tagkey
type: tag
- name: f1_metric_alias
type: count
tags:
- test:snowflake
다음 예는 데이터베이스, 스키마 및 웨어하우스 이름으로 태그가 지정된 QUERY_HISTORY
보기에 있는 모든 쿼리 수를 계산하는 쿼리를 보여줍니다.
select count(*), DATABASE_NAME, SCHEMA_NAME, WAREHOUSE_NAME from QUERY_HISTORY group by 2, 3, 4;
instances
에서 커스텀 쿼리 구성은 다음과 같습니다.
custom_queries:
- query: select count(*), DATABASE_NAME, SCHEMA_NAME, WAREHOUSE_NAME from QUERY_HISTORY group by 2, 3, 4;
columns:
- name: query.total
type: gauge
- name: database_name
type: tag
- name: schema_name
type: tag
- name: warehouse_name
type: tag
tags:
- test:snowflake
에이전트 의 상태 하위 명령을 실행하고 점검 섹션에서 snowflake
를 찾습니다.
snowflake.query.*
, snowflake.billing.*
, snowflake.storage.*
, snowflake.logins.*
.다른 메트릭 그룹에서 메트릭을 수집하려면 이 통합에 대한 예제 구성 파일을 참조하세요.
메트릭 점검에서 제공되는 메트릭 목록을 참조하세요.
Snowflake는 이벤트를 포함하지 않습니다.
snowflake.can_connect
점검에서 Snowflake 자격 증명을 인증할 수 없는 경우 CRITICAL
을 반환합니다. 그렇지 않으면 OK
를 반환합니다.
Statuses: ok, critical
도움이 필요하신가요? Datadog 고객 지원팀에 문의하세요.
기타 유용한 문서, 링크 및 기사: