注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

故障排除参考

此页面描述了常见的调度问题及调试步骤。

调度搭建问题

调度指标页面

排查调度问题的最佳方法之一是查看调度指标页面。指标页面可以告诉您失败的原因。常见的失败包括:

另一个有用的标签是显示过去调度版本和编辑的 版本 标签。如果您的调度突然表现与预期不同,请检查是否有与此更改一致的调度版本更改,并考虑将调度恢复到之前的工作状态。

调度搭建失败

您可以通过查看调度指标页面上的 运行历史 标签来验证调度是否在预期时间被触发。

如果调度被触发,但搭建随后失败,您可以在搭建应用程序中调试此搭建,类似于任何其他搭建。

如果未设置适当的权限,调度也将无法搭建。调度的权限取决于调度所在的词元模式。了解更多关于项目范围调度

调度搭建被忽略

您可以通过查看调度指标页面上的 运行历史 标签来验证调度是否在预期时间被触发。此信息通常会给出调度被忽略的原因。

所有数据集都是最新的

如果所有目标数据集都是最新的(即自上次在该数据集上搭建以来其输入没有更新),调度运行将被忽略。如果是这种情况,您将在 运行历史 标签中看到此原因。在调度编辑器中,导航到调度列表。然后,您将可以选择通过 过时 来为数据沿袭图上色,这将为您提供哪些任务规格被视为过时的概述。

在特殊情况下,可以使用高级设置中的 强制搭建 选项覆盖此行为,尽管在这些情况之外,这是计算上浪费的。如果任何目标数据集通过 Phonograph 同步、以 API 调用变换或数据连接同步搭建,它们可能不会显示为过时,可能需要启用 强制搭建 选项以便调度运行。

调度搭建任务规格子集

如果调度只触发任务规格的一个子集,您将在调度指标页面上的 运行历史 标签中看到证据。

这种行为的一个原因是只有任务规格的一个子集是过时的。调度只会搭建过时的任务规格,而那些最新的将在搭建期间被忽略。有关更多故障排除详细信息,请参见所有数据集都是最新的。如果所有这些任务规格都是最新的,搭建被 Ignored 的情况会发生。

另一个原因可能是任务规格未包含在搭建的任务规格图中。在调度编辑器中选择给定调度时,要搭建的任务规格将在数据沿袭图中突出显示。任务规格的选择取决于搭建类型。如果使用 连接搭建,请确保验证是否存在用于多个分支上使用相同数据集的调度的连接任务规格。

调度未触发

您可以通过查看调度指标页面上的 运行历史 标签来验证调度是否在预期时间被触发。一些常见的调试步骤包括:

  • 检查调度未暂停。暂停的调度在解除暂停之前不会触发。
  • 检查调度触发配置。如果调度之前成功触发,请检查调度历史以查看触发器是否有最近的更改。
  • 如果调度使用 事件 触发器,请验证预期事件是否确实发生。
    • 例如,如果输入更新时应触发搭建,请检查输入上的最后一次搭建是否成功运行,并且此搭建的事务是否在数据集预览历史视图中成功提交。

    • 如果搭建应在多个输入更新后触发,请检查所有输入的搭建和时间。例如,考虑一个输入触发器为 A1 和 A2 的调度,并且“等待所有这些数据集更新”已打开。假设此调度之前在时间 T1 运行。要在时间 T2 重新运行此调度,A1 和 A2 需要在(T1, T2)之间的时间段内都被更新。

      显示 A1 和 A2 条件要求的流程图

调度重试与配置不同

并不是所有类型的失败都可以重试。调度运行时的重试次数将被管理员配置的最大值限制。了解更多关于高级调度设置

可重试错误代码包括:

  • INTERNAL
  • TIMEOUT
  • CUSTOM_SERVER
  • FAILED_PRECONDITION

调度因 JobSpecInputsTrashed 或 JobSpecOutputsTrashed 失败,或数据沿袭警告某些数据集被回收

此错误意味着调度包含或读取自一个被回收的资源。您可以通过以下方法解决:

  • 恢复从回收站中删除的数据集。
  • 从调度中排除被删除的数据集。如果此数据集用作调度中另一个下游数据集的输入,您还需要执行以下操作之一:
    • 与被回收的数据集一起排除下游数据集。
    • 修改下游数据集的逻辑,使其不再将被回收的数据集作为输入。

调度编辑器问题

调度权限

要在项目范围模式下编辑调度,您必须对目标数据集具有 编辑者 权限,对触发数据集具有 只读 权限,并对调度所限定的项目具有 编辑者 权限。如果您失去了对某个数据集的权限,请在保存更改之前从调度中移除此数据集。

要编辑、删除或暂停调度,您需要对目标数据集具有 编辑者 权限,并对调度所限定的项目具有 编辑者 权限。要查看调度,您需要对目标数据集具有 只读 权限。

调度计算信息不可用

调度上的警告,指示并非所有计算信息都可用

查看调度时可能会出现一条消息,显示“并非所有计算信息都可用。实际计算使用量可能高于显示的数量。”,原因如下:

  • 一个或多个调度搭建仍在进行中,总计算使用量尚未最终确定。
  • 缺少至少一个调度搭建使用的资源信息。

当显示此消息时,无需用户采取任何行动。此消息的目的是显示在给定时间显示的总计算使用量可能不准确。