- カテゴリ:
SERVERLESS_TASK_HISTORY¶
このテーブル関数は、 サーバーレスタスク の使用履歴をクエリするために使用されます。関数によって返される情報には、タスク名と各タスクの実行によって消費されたクレジットが含まれます。
構文¶
SERVERLESS_TASK_HISTORY(
[ DATE_RANGE_START => <constant_expr> ]
[ , DATE_RANGE_END => <constant_expr> ]
[ , TASK_NAME => '<string>' ] )
引数¶
すべての引数はオプションです。
DATE_RANGE_START => constant_expr
、 .DATE_RANGE_END => constant_expr
使用状況ウィンドウの日付/時刻範囲:
終了日が指定されていない場合は、 CURRENT_DATE が範囲の終了として使用されます。
開始日が指定されていない場合、範囲は
DATE_RANGE_END
の開始10分前に開始します(つまり、デフォルトでは過去10分間の使用履歴を表示します)。たとえば、DATE_RANGE_END
が CURRENT_DATE の場合、デフォルトのDATE_RANGE_START
は 前日 の11:50 PM です。
TASK_NAME => string
使用履歴を取得するタスクの名前。指定されたタスクの使用状況データのみが返されます。
タスク名は一重引用符で囲む必要があります。また、タスク名にスペース、大文字と小文字の混在、または特殊文字がある場合、名前は二重引用符を一重引用符内で囲む必要があります(例:
'"My Task"'
と'mytask'
)。
使用上の注意¶
ACCOUNTADMIN ロールまたは MONITOR USAGE グローバル権限が明示的に付与されているロールの結果のみを返します。
注釈
MONITOR USAGE 権限を持つロールは、オブジェクトごとのクレジット使用状況を表示できますが、オブジェクト名は表示できません。
Information Schemaテーブル関数を呼び出す場合、セッションには使用中の INFORMATION_SCHEMA スキーマ または 完全修飾された関数名が必要です。詳細については、 Snowflake Information Schema をご参照ください。
履歴は1時間単位で表示されます。
出力¶
この関数は、次の列を返します。
列名 |
データ型 |
説明 |
---|---|---|
START_TIME |
TIMESTAMP_LTZ |
指定された時間範囲の開始です。 |
END_TIME |
TIMESTAMP_LTZ |
指定された時間範囲の終了です。 |
TASK_NAME |
TEXT |
タスクの名前。 |
CREDITS_USED |
TEXT |
START_TIME および END_TIME ウィンドウ中にサーバーレスタスクの使用に対して請求されたクレジットの数。 |
例¶
アカウントの1時間範囲の使用履歴を取得します。
select * from table(information_schema.serverless_task_history( date_range_start=>'2021-10-08 19:00:00.000', date_range_end=>'2021-10-08 20:00:00.000'));サンプル出力:
+-------------------------------+-------------------------------+-----------+--------------+ | START_TIME | END_TIME | TASK_NAME | CREDITS_USED | |-------------------------------+-------------------------------+-----------+--------------| | 2021-10-08 04:16:22.000 -0700 | 2021-10-08 05:16:22.000 -0700 | T1 | 0.000286714 | | 2021-10-08 05:16:22.000 -0700 | 2021-10-08 06:16:22.000 -0700 | T1 | 0.007001568 | +-------------------------------+-------------------------------+-----------+--------------+
アカウントの過去12時間の履歴を取得します。
select * from table(information_schema.serverless_task_history( date_range_start=>dateadd(H, -12, current_timestamp)));
アカウントの過去1週間の履歴を取得します。
select * from table(information_schema.serverless_task_history( date_range_start=>dateadd(D, -7, current_date), date_range_end=>current_date));
アカウント内にある指定されたタスクの過去1週間の使用履歴を取得します。
select * from table(information_schema.serverless_task_history( date_range_start=>dateadd(D, -7, current_date), date_range_end=>current_date, task_name=>'mydb.myschema.mytask'));