查看 Snowsight 中的任务和任务图¶
借助任务,您可以计划 SQL 代码的执行。任务与特定的数据库和架构相关联。您可以使用 Snowsight 查看和管理您的任务和任务图。使用 Snowsight,您还可以查看任务和任务图的执行历史记录。
本主题内容:
查看和管理单个任务¶
要在 Snowsight 中查看和管理任务,请执行以下操作:
登录 Snowsight。
选择 Data » Databases。
对于特定的数据库和架构,请选择 Tasks,然后选择要管理的任务。
在 Snowsight 中查看任务时,您可以执行以下操作:
在 Details 部分,查看任务 ID、任务使用的仓库、计划、状态、参数和任何条件。
查看 SQL 用于创建任务的语句以及 Task Definition 部分中的任何任务图配置。
管理任务权限。请参阅 使用 Snowsight 管理对象权限。
选择 ... 操作按钮以编辑任务、克隆任务、删除任务或将任务的所有权转移给其他角色。
当您在 Snowsight 中编辑任务时,任务将自动暂停,并在您完成任务编辑后恢复。有关暂停和恢复任务的更多信息,请参阅 运行的版本控制。
查看和管理任务图¶
在 Snowsight 中,您可以查看任务图,以查看格式为任务图的根任务及其从属任务。您可以在任务图视图中看到以下内容:
查看任务信息,包括根任务和所选从属任务的状态。
检查任务图,包括图表中的根任务和从属任务。请参阅 任务图。
选择图表中的任务以查看其他详细信息,如前置任务、用于运行任务的仓库以及拥有任务的角色。
您还可以编辑根任务以更改任务图的参数。当您在 Snowsight 中编辑任务时,任务将自动暂停,并在您完成任务编辑后恢复。有关暂停和恢复任务的更多信息,请参阅 运行的版本控制。
要查看特定数据库架构的任务图,请执行以下操作:
登录 Snowsight。
在导航菜单中,选择 Data » Databases。
使用对象资源管理器查找包含要查看任务的数据库和架构。
对于所选架构,请选择 Tasks。
选择特定任务。
此时,系统将显示任务详细信息,其中包含其他 Graph 和 Run History 选项卡。
选择 Graph 选项卡以查看任务图。
此时,系统将显示任务图,其中显示任务层次结构。
选择一项任务,以查看图表上下文中的详细信息。
备注
仅当任务在过去 7 天内执行时,任务历史记录数据才可用。
查看任务历史记录¶
使用 Snowsight,您可以通过不同的方式查看任务的执行历史记录:
查看账户中运行的所有任务的执行历史记录,例如,识别运行失败的关键任务、长期运行的任务或增加成本的任务。
查看特定任务的执行历史记录,以收集有关该任务的更多信息。
查看任务图的执行历史记录,以实现可观察性和监控目的,并帮助识别特定任务图的问题。
您还可以使用表函数 TASK_HISTORY 或视图 TASK_HISTORY 视图 查看 SQL 的任务历史记录。
查看任务历史记录所需的权限¶
要在 Snowsight 中查看任务历史记录,您需要具有与运行 TASK_HISTORY 函数所需的相同权限。
您必须使用以下角色之一:
ACCOUNTADMIN 角色。
具有任务 OWNERSHIP 权限的角色。
对存储任务的数据库和架构具有全局 MONITOR EXECUTION 权限和 USAGE 权限的角色。
使用的角色必须能够查询 Account Usage TASK_HISTORY 视图。可以将共享 SNOWFLAKE 数据库中的 USAGE_VIEWER 数据库角色授予您使用的角色。
例如,要查看特定任务 mytask
的历史记录,自定义角色 myrole
需要:
任务的 OWNERSHIP 权限。
共享 SNOWFLAKE 数据库中的 USAGE_VIEWER 数据库角色。
要授予这些权限,请运行以下 SQL 命令:
GRANT OWNERSHIP ON TASK mytask TO ROLE myrole;
GRANT DATABASE ROLE USAGE_VIEWER TO ROLE myrole;
有关详细信息,请参阅:
查看任务的运行历史记录¶
任务运行历史记录包括特定任务每次执行的详细信息。您可以查看任务的计划时间、实际开始时间、持续时间等其他信息。
对于每个实例,您可以查看以下内容:
计划开始时间:任务下一次计划运行的时间。
状态:最近一次运行的状态。
持续时间:最近一次运行的时间(以秒为单位)。
查询:查看工作表中的任务查询配置文件或任务语句。
要查看运行历史记录,请执行以下操作:
登录 Snowsight。
选择 Data » Databases。
在右窗格中,使用对象资源管理器导航到数据库和架构。
对于所选架构,选择并展开 Tasks。
选择任务。系统将显示任务信息,包括 Task Details、Graph 和 Run History 子选项卡。
选择 Run History 选项卡。
备注
仅当任务在过去 7 天内执行时,任务历史记录数据才可用。
查看账户级任务历史记录¶
查看任务运行的账户级历史记录,以识别整个账户(而非单个特定任务)的失败任务、长期运行任务以及其他监控和调试情况。
要查看账户级任务历史记录,请执行以下操作:
登录 Snowsight。
在导航菜单中,选择 Monitoring » Task History。
要查看单个任务的运行记录,请从筛选器中选择 View » Task Runs。
选择任务运行历史记录后,可以筛选页面以显示相关信息。
选择 Date Range 筛选器,即可显示从最后一天到过去 12 个月(或自定义范围)的任务历史记录。
选择 Task status 筛选器,即可显示一个或多个状态的任务历史记录,例如 Succeeded、Failed、Cancelled 或 Skipped。
根据任务名称进行筛选,以查看特定任务的状态模式或持续时间。
根据包含任务的数据库或架构名称进行筛选。
例如,要识别长期运行的任务,请选择 Status 筛选器以仅显示成功的任务,并按降序对 Duration 字段进行排序。要进行高级调试,可以使用 Open in worksheets 按钮打开工作表中经过筛选和排序的表。然后,您可以使用 LIMIT / FETCH 和 GROUP BY 实参修改 SQL 语句,以确定运行时间最长的前 25 个任务所在的数据库和架构。
您还可以选择特定任务,深入了解更多详细信息。
查看账户级任务图历史记录¶
查看任务图的账户级历史记录,可识别阻止图表完成的关键失败任务、长期运行的任务、效率低下或频繁失败的任务图,以及整个账户的其他监控和调试案例。
要查看账户级任务图历史记录,请执行以下操作:
备注
您必须使用具有 OBJECT_VIEWER 数据库角色的角色。任务图历史记录页面使用 COMPLETE_TASK_GRAPHS 视图。有关更多信息,请参阅 ACCOUNT_USAGE 架构 SNOWFLAKE 数据库角色。您的角色还必须具备任务的 OWNERSHIP 权限。
登录 Snowsight。
在导航菜单中,选择 Monitoring » Task History。
默认情况下,该页面以直方图和表的形式显示从最后一天开始的所有任务图运行。
选择任务图运行历史记录后,可以筛选页面以显示相关信息。
选择 Date Range 筛选器,即可显示较长时间范围的任务历史记录,最长可达过去 12 个月。
选择 Graph status 筛选器,即可显示一个或多个任务图状态(如 Succeeded、Failed、Cancelled 或 Skipped)的运行历史记录。如果图表中的一个任务失败,则整个图表显示为 Failed。
筛选包含任务图根任务的数据库名称和可选架构。
选择数据库和可选架构后,可根据根任务名称进行筛选,以查看特定任务类型的状态或持续时间。您可能会看到您的活动角色无权查看的根任务。
例如,要识别包含失败任务的任务图,可选择 Graph status 筛选器以仅显示失败的任务。您可以将鼠标悬停在失败任务上,以获取有关失败的更多详细信息。要进行高级调试,请使用 Open in worksheets 按钮在工作表中打开经过筛选和排序的表。然后,例如,您可以使用 LIMIT / FETCH 和 GROUP BY 实参修改 SQL 语句,以找出失败任务最多的 25 个数据库和架构。
调试任务图运行¶
查看账户级任务图历史记录时,选择特定任务图运行以查看更多详细信息。如果有权查看图表中任务的历史记录,则系统会显示任务图运行,否则会显示错误。
例如,您可以选择特定的失败任务图运行以查看完整图表,并识别由于特定失败任务、暂停任务而未运行的任务,或者识别延迟图表中从属任务运行的长期运行的任务。
对于任务图中的特定任务,可以通过将鼠标悬停在任务的各个方面来收集有关该任务的其他详细信息:
仓库元数据可识别运行任务时使用的仓库,包括状态和大小,这有助于识别因仓库大小而运行缓慢的任务或导致仓库使用的任务。
流条件元数据可显示表流详细信息,以及任务的条件是设置为 true 还是 false。
选择 Go to Task Page 可查看任务的其他详细信息。
每个任务都会显示一个状态,如 Succeeded、Failed、Skipped、Suspended、Cancelled 或 Did not run,以及相应的颜色。您可以将鼠标悬停在失败、跳过、暂停和已取消任务的状态上,了解更多信息。
除任务图外,您还可以查看表,其中描述了运行的任务、每个任务的开始时间、每个任务运行的持续时间、每个任务的状态以及表示任务运行顺序的时间线。借助时间线,您可以快速确定任务图运行缓慢的原因,以及哪个长时间运行的任务可能延迟了从属任务的启动。
对于表中的每个任务,可以选择 ... “More”菜单,在工作表中打开任务的查询 ID,或打开查询配置文件。