[小ネタ]Snowpipeでpipeオブジェクト作成後にERROR_INTEGRATIONを設定することはできるか確かめてみた
さがらです。
非常に小ネタなのですが、Snowpipeでpipeオブジェクト作成後にERROR_INTEGRATIONを設定することはできるか確かめてみたので、その内容をまとめてみます。
結論
早速結論なのですが、Snowpipeでpipeオブジェクト作成後にERROR_INTEGRATIONを設定することは「できます。」
以下、実際にやってみた内容をまとめてみます。
やってみた
事前準備
まず、以下のブログに沿って、Snowpipeを使ったパイプラインを設定しているとします。
この上で、Notification Integrationを以下のブログに沿って設定しておきます。sagara_sns_notification_int
という名前で作成しました。
pipeオブジェクトにERROR_INTEGRATIONを設定
以下のクエリを実行して、pipeオブジェクトに対してERROR_INTEGRATIONを設定します。やることはこれだけでOKです。
alter pipe sagara_test_db.raw.pipe_raw_customer
set error_integration = sagara_sns_notification_int;
エラーが起きるCSVをS3に入れて動作確認
以下の明らかにロード先のテーブルと比較してカラム数が足りていないCSVファイルをS3バケットに入れて、エラーが起きるのを待ちます。
すると、約1分後に以下のメッセージが設定していたSlackチャンネルに送信されました!