Zenn
🦁

【Snowflake】リソースモニターのメール通知設定についてまとめてみた

2025/01/27に公開

はじめに

こんにちは!システムサポートの斎藤です。

みなさんは、リソースモニターのメール通知機能は活用されてますか?
Snowflake のリソースモニターでは、アカウント全体または個々のウェアハウスのコスト(クレジット使用量)を監視することができ、指定した閾値を超えた場合にウェアハウスを強制的に停止する・ユーザーへメール通知する等の設定が可能です。
企業のコスト管理において非常に有用な機能ですが、正しく事前設定しておかないと、想定のユーザーにメール通知が届かないという事態も起こりえます。

今回、リソースモニター機能でメール通知を設定する方法を整理して紹介します!

本記事で分かること

本記事では Snowflake リソースモニターにおいて、どのようなユーザーにメール通知が可能か・通知するための必要な設定方法を紹介します。
以下の内容について理解することができます。

  • リソースモニターのモニタータイプごとにメール通知可能なユーザーについて
  • リソースモニターのモニタータイプごとに必要なメール通知のための設定方法

リソースモニターについて

リソースモニターの詳細な説明については、Snowflake 公式ドキュメントの以下をご参照ください。
https://docs.snowflake.com/en/user-guide/resource-monitors

ここではリソースモニターの設定のうち、メール通知設定について説明する上で前提となる「クレジットクォータ」「モニタータイプ」「アクション」について簡単に紹介します。

■クレジットクォータ
監視する際のコスト(クレジット)の基準値です。
ここで設定した値を100%とし、後の「アクション」で指定%を超えた際の動作を設定します。

■モニタータイプ
監視対象を指定します。以下の2種類が存在します。

モニタータイプ 内容
ウェアハウス リソースモニターが存在する Snowflake アカウントのウェアハウスのうち、指定したウェアハウスのコスト(クレジット)使用量のみを監視
アカウント リソースモニターが存在する Snowflake アカウントの全ウェアハウス合計のコスト(クレジット)使用量を監視

■アクション
以下の3種類のアクションが設定可能です。
実行するアクションについて、クレジットクォータの何%を超えた場合に実行するかを指定します。

アクション 内容
メール通知 (NOTIFY) 通知メールを送信 (最大5つまで指定可能)
メール通知+一時停止 (SUSPEND) 通知メールを送信し、ウェアハウスで実行中の処理完了を待ってからウェアハウスを停止
(アカウント単位の場合は全ウェアハウスを停止)
メール通知+即時一時停止 (SUSPEND IMMEDIATE) 通知メールを送信し、ウェアハウスで実行中の処理をキャンセルしてウェアハウスを停止
(アカウント単位の場合は全ウェアハウスを停止)

モニタータイプごとに可能なメール通知先は異なります。
また、リソースモニターで通知を設定していても、通知先となるユーザー側でメールアドレス関連の設定がされていない場合には、設定時にエラーになる or メールが届かないことがあります。

リソースモニタータイプごとのメール通知先および必要な設定

モニタータイプごとのメール通知先は以下のとおりです。
(【】内の設定については、本記事の下部で詳述します)
いずれも事前に【(1)メールアドレス確認】を済ませている必要があります。

モニタータイプ メール通知先
ウェアハウス 【(2)リソース監視通知】を有効にしているすべてのアカウント管理者
【(3)リソースモニターの通知リストへの追加】がされているユーザー
アカウント 【(2)リソース監視通知】を有効にしており、かつ【(4)リソースモニターに対する所有者権限】のあるロールを持つアカウント管理者
※アカウント管理者以外のユーザーへの通知は不可

上記をまとめると、以下表のとおりです。

ちなみに、通知メールは以下のような内容です。(2025年1月時点)
監視対象のリソースモニター名の他、どのアクション (NOTIFY/SUSPEND/SUSPEND IMMEDIATE) が実行され、どの程度閾値を超えたのかの情報が掲載されています。

以降では、上記必要な設定の (1)~(4) について、設定方法を説明します!

(1) メールアドレス確認

Snowsight (WebUI) にログインし、[自分のプロファイル] の上部の「確認メールを再送信」をクリックします。
[自分のプロファイル] の「メール」欄に設定しているメールアドレス宛に確認メールが送信されますので、メール内容を確認の上承認します。

(2) リソース監視通知

(1) と同様に [自分のプロファイル] を開き、通知欄の 「リソースモニターからのメール通知」チェックをオンにします。(アカウント管理者のみ)

(3) リソースモニターの通知リストへの追加

リソースモニターへのCREATEやALTERコマンドにて、「NOTIFY_USERS」として指定します。

CREATE OR REPLACE RESOURCE MONITOR RM_TEST_MAIL_SEND
  WITH
      CREDIT_QUOTA = 1
      FREQUENCY = DAILY
      START_TIMESTAMP = IMMEDIATELY
      NOTIFY_USERS = (TEST_USER)
      TRIGGERS ON 1 PERCENT DO NOTIFY
;

現在どのユーザーが追加されているかは、SHOW RESOURCE MONITORS コマンドで確認可能です。

(4) リソースモニターに対する所有者権限

所有者権限は、リソースモニターを作成したユーザーのロールに付与されます。
現在どのロールに付与されているかは、SHOW RESOURCE MONITORS コマンドで確認可能です。

まとめ

本記事では、以下について学習しました。

  • リソースモニターのモニタータイプごとにメール通知可能なユーザーについて
  • リソースモニターのモニタータイプごとに必要なメール通知のための設定方法

リソースモニターのメール通知機能を設定することで、予期せぬコスト(クレジット)消費が発生した際に必要なメンバーに即座に通知することが可能です。
皆さんもぜひ活用してみてください!

https://www.sts-inc.co.jp/snowflake/

Discussion

ログインするとコメントできます