SERVERLESS_TASK_HISTORY¶
此表函数用于查询 无服务器任务 使用历史记录。函数返回的信息包括任务名称和每个任务运行所使用的 Credit。
语法¶
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 权限的角色可以查看每个对象的 Credit 使用情况,但不能查看对象名称。
当调用 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 时段内对 Serverless Task 使用情况计费的 Credit。 |
示例¶
检索账户一小时内的使用情况历史记录:
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)));
检索账户过去一周的历史记录:
select * from table(information_schema.serverless_task_history( date_range_start=>dateadd(D, -7, current_date), date_range_end=>current_date));
检索您账户中指定任务过去一周的使用情况历史记录:
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'));