查看 Snowsight 中的任务和任务图

借助任务,您可以计划 SQL 代码的执行。任务与特定的数据库和架构相关联。您可以使用 Snowsight 查看和管理您的任务和任务图。使用 Snowsight,您还可以查看任务和任务图的执行历史记录,并重试失败的任务。

本主题内容:

查看和管理单个任务

要在 Snowsight 中查看和管理任务,请执行以下步骤:

  1. 登录 Snowsight。

  2. 选择 Data » Databases

  3. 对于特定的数据库和架构,请选择 Tasks,然后选择要管理的任务。

在 Snowsight 中查看任务时,您可以执行以下操作:

  • Details 部分,查看任务 ID、任务使用的仓库、计划、状态、参数和任何条件。

  • 查看 SQL 用于创建任务的语句以及 Task Definition 部分中的任何任务图配置。

  • 管理任务权限。请参阅 使用 Snowsight 管理对象权限

  • 选择 ... 操作按钮以编辑任务、克隆任务、删除任务或将任务的所有权转移给其他角色。

当您在 Snowsight 中编辑任务时,任务将自动暂停,并在您完成任务编辑后恢复。有关暂停和恢复任务的更多信息,请参阅 任务运行的版本控制

查看和管理任务图

查看任务图,以查看格式为任务图的根任务及其从属任务和终结器任务。有关任务图的详细信息,请参阅 使用任务图管理任务依赖关系。查看任务图时,您可以在 Snowsight 中执行以下步骤:

  • 查看任务信息。

  • 检查任务图。

  • 选择图表中的任务以查看其他详细信息,如前置任务、用于运行任务的仓库以及拥有任务的角色。

您还可以编辑根任务以更改任务图的参数。当您在 Snowsight 中编辑任务时,任务将自动暂停,并在您完成任务编辑后恢复。有关暂停和恢复任务的更多信息,请参阅 任务运行的版本控制

Snowsight 中显示的示例任务图,带有注释,用于查看任务图的导航,如以下过程中所述。

要查看特定数据库架构的任务图,请执行以下操作:

  1. 登录 Snowsight。

  2. 在导航菜单中,选择 Data » Databases

  3. 使用对象资源管理器查找包含要查看任务的数据库和架构。

  4. 对于所选架构,请选择 Tasks

  5. 选择特定任务。

    此时,系统将显示任务详细信息,其中包含其他 GraphRun History 选项卡。

  6. 选择 Graph 选项卡以查看任务图。

    此时,系统将显示任务图,其中显示任务层次结构。

  7. 选择一项任务,以查看图表上下文中的详细信息。

备注

仅当任务在过去 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;
Copy

有关详细信息,请参阅:

查看任务的运行历史记录

任务运行历史记录包括特定任务每次执行的详细信息。可以查看计划运行时间、状态、返回值、任务的持续时间以及其他信息。

Snowsight 任务历史记录页面,每个部分都有注释。

对于每个实例,您可以查看以下内容:

  • 计划运行时间:计划任务运行的时间。

  • 状态:最近一次任务运行尝试的状态。

  • 持续时间:任务运行的时间(以秒为单位)。

要查看运行历史记录,请执行以下操作:

  1. 登录 Snowsight。

  2. 选择 Data » Databases

  3. 在右窗格中,使用对象资源管理器导航到数据库和架构。

  4. 对于所选架构,选择并展开 Tasks

  5. 选择任务。系统将显示任务信息,包括 Task DetailsGraphRun History 子选项卡。

  6. 选择 Run History 选项卡。

备注

仅当任务在过去 7 天内执行时,任务历史记录数据才可用。

查看账户级任务历史记录

查看任务运行的账户级历史记录,以识别整个账户(而非单个特定任务)的失败任务、长期运行任务以及其他监控和调试情况。

要查看账户级任务历史记录,请执行以下操作:

  1. 登录 Snowsight。

  2. 在导航菜单中,选择 Monitoring » Task History

  3. 要查看单个任务的运行记录,请从筛选器中选择 View » Task Runs

选择任务运行历史记录后,可以筛选页面以显示相关信息。

  • 选择 Date Range 筛选器,即可显示从最后一天到过去 12 个月(或自定义范围)的任务历史记录。

  • 选择 Task status 筛选器,即可显示一个或多个状态的任务历史记录,例如 SucceededFailedCancelledSkipped

  • 根据任务名称进行筛选,以查看特定任务的状态模式或持续时间。

  • 根据包含任务的数据库或架构名称进行筛选。

例如,要识别长期运行的任务,请选择 Status 筛选器以仅显示成功的任务,并按降序对 Duration 字段进行排序。要进行高级调试,可以使用 Open in worksheets 按钮打开工作表中经过筛选和排序的表。然后,您可以使用 LIMIT / FETCHGROUP BY 实参修改 SQL 语句,以确定运行时间最长的前 25 个任务所在的数据库和架构。

您还可以选择特定任务,深入了解更多详细信息。

查看任务图历史记录

查看 Task History 页面

Task History 页面上,查看任务图运行的历史记录,以识别失败的任务、长期运行的任务以及其他监控和调试情况。此页面显示任务图的历史记录。您还可以使用该页面上的 Task Runs 选项卡查看单个任务的历史记录。

备注

通过 Task History 页面,您可以根特定角色权限查看任务图运行情况。

要查看任务图运行,请执行以下步骤:

  1. 登录 Snowsight。

  2. 在导航菜单中,选择 Monitoring » Task History

    在 Task History 页面上,查看任务图列表。

Task Graphs 选项卡上,可以执行以下操作:

  • 将鼠标悬停在 Previous Runs 计数器上,按时间顺序显示最近运行的状态。

  • Duration Trend 图通过突出显示最小-最大范围内的中位线,直观显示任务运行持续时间随时间的变化(基于所选日期范围)。这有助于快速评估任务持续时间是稳定、波动还是呈现趋势,并识别单个异常值。

  • 使用省略号菜单手动运行图形、编辑根任务(例如,修改计划或参数)或挂起/恢复图形。

您可以筛选页面以显示相关信息。建议按数据库和架构筛选,以减少大型账户的加载时间。

  • 选择 Date Range 筛选器可显示最近 7 天(默认设置)的任务历史记录。您可以将其更改为 1 天。请注意,日期范围筛选器仅适用于以前的运行计数器和运行时持续时间趋势。

  • 选择 Last Run Status 筛选器可显示一个或多个状态的任务图,例如最近运行中的 SucceededFailedCanceledSkipped。此筛选器仅适用于任务图的最新已完成运行。

  • 根据包含任务的数据库或架构名称进行筛选。

  • 使用搜索字段根据根任务名称进行筛选。

您还可以选择特定的任务图进行深入查看,以了解更多详细信息,如下图所示:

在任务图详细信息页面上查看任务图的详细信息。

选择任务图总会打开最近运行的详细信息。如果您想查看上次运行的详细信息,可以在特定的图形运行页面上选择 Open previous runs

从任务对象页面访问任务图

通过此预览,如果任务为任务图的一部分,您还可以从特定的运行历史记录页面访问 Task Graph 页面。

  1. 登录 Snowsight。

  2. 选择 Data » Databases

  3. 在右窗格中,使用对象资源管理器导航到数据库和架构。

  4. 对于所选架构,选择并展开 Tasks

  5. 选择任务。系统将显示任务信息,包括 Task DetailsGraphRun History 子选项卡。

  6. 选择 Run History 选项卡。

  7. 如果任务与任务图相关联,则 Task 旁边显示 Task Graph 选项卡,如下图所示。

    选择 Task Graph 可查看任务图的详细信息。

    在特定的任务运行历史记录页面上,您可以看到任务运行的实时状态。如果任务与任务图相关联,您还可以查看任务图的详细信息。

注意事项和限制

此预览功能有以下限制:

  • 必须具有 OWNERSHIP 权限才能在对象级别或 Task Graph 页面上查看任务运行历史记录。

  • 正在执行的或跳过的图形运行不支持图形运行详细信息。

重试失败的任务

在 Snowsight 中,您可以看到以前的任务运行尝试,并重试失败和取消的任务图。您必须拥有任务的 OPERATE 权限,才能重试失败和取消的任务。要查看以前的任务运行尝试,您还需要与 查看任务历史记录 相同的权限。

这对于确保成功完成数据工作流或管道,而无需重新启动整个过程,从而节省时间和资源特别有用。

Snowflake 支持自动重试和手动重试两种机制:

  • 自动重试:失败的任务在失败后不久会根据在根任务级别设置的预定义参数自动重试。

  • 手动重试:如果自动重试不能解决问题,您可以在任务最新图形运行后的 14 天内手动重试失败的或取消的任务。

备注

要使用手动重试功能,请不要退出当前处于预览状态的 查看任务图 功能。手动重试功能仅在启用了 查看任务图 功能时才可用。

使用重试(而不是新运行),对于完成中途失败的图形特别有用,这样可以避免重新执行已成功完成或跳过的任务。这样可以确保只重试失败的任务,从而尽可能降低冗余。

备注

  • 只有在图形自上次运行以来未被重新创建或更改的情况下,才能重试该图形。

  • 您必须拥有任务的 OWNERSHIP 或 OPERATE 权限,才能重试失败和取消的任务。要查看以前的任务运行尝试,您还需要与 查看任务历史记录 相同的权限。

请执行以下步骤以手动重试失败和取消的任务。以下步骤仅在启用了 查看任务图 预览版功能时才起作用。

  1. 登录 Snowsight。

  2. 选择 Data » Databases

  3. 在右窗格中,使用对象资源管理器导航到数据库和架构。

  4. 对于所选架构,选择并展开 Tasks

  5. 选择任务。系统将显示任务信息,包括 Task DetailsGraphRun History 子选项卡。

  6. 选择 Run History 选项卡。

  7. Run History 页面上,选择 Task Graph

  8. 在任务图运行详细信息页面上,打开失败或取消的任务图。

  9. 选择 Retry 以手动重试失败的任务图运行。

    重试仅启动图中失败和取消的任务,不重新运行已经成功的任务。

    在特定的任务图运行详细信息页上,您可以选择 :ui:`Retry` 以手动重试所有失败的任务图运行。
  10. 选择刷新按钮以刷新页面。失败的尝试在账户级任务运行详细信息中显示。 账户级任务运行历史记录和任务图运行历史记录显示最近尝试的状态,延迟时间为 45 分钟。

    刷新页面后,失败的尝试将在账户级任务图运行详细信息中显示。
  11. 失败的尝试还会在对象级任务历史记录中显示。按照 步骤查看任务的运行历史记录。新的运行尝试会显示。所有任务运行尝试具有相同的运行 ID。

任何先前失败或取消的尝试都会在运行状态旁边显示。您可以选择任务以查看每次尝试的计划时间戳、状态和错误消息。

任何先前失败或取消的尝试都会在运行状态旁边显示。

备注

如果以下任一情况为真,则禁用 Retry 操作,

  • 重试已在进行中。

  • 所选的运行不是最近运行。

  • 任务图在运行后已修改。

  • 运行时间超过 14 天。

如果任务图中没有失败或取消的任务,则 Retry 操作不可用。

语言: 中文