2

我有一个始终处于运行状态的 Ultra Pipeline。我需要的统计数据是过去 7 天仪表板中管道执行的平均持续时间。当我尝试使用 REST Get Snap 中的 SnapLogic API 检索这些记录时,我仅在几天内就获得了大约 50 个随机条目,但是,我想要的输出数量要高得多(500-600 次执行)。

我对此的问题是 - 是否会发生这种情况,因为在这种情况下,它是一项超任务而不是计划/触发的任务?我已经尝试过后者,在这种情况下,它是有效的。管道流程如下所示:

Pipeline_Flow

REST_GET_Snap

我尝试过的解决方案之一是停止实例并使用 REST Post Snap 再次调用它们,但是,到目前为止还没有成功。

Pipeline_Stop

REST_GET

Mapper_Snap

REST_Post_Snap

有什么建议么?

4

1 回答 1

1

ULTRA 管道始终在运行,使其能够从外部源连续使用文档,而不会增加延迟。

我尝试过的解决方案之一是停止实例并使用 REST Post Snap 再次调用它们,但是,到目前为止还没有成功。

然而,这违背了 ULTRA 任务的目的。

您可以从仪表板获取快速执行时间。请参考以下屏幕截图。

执行时间处理时间

您可以从仪表板获得的另一件事是 ULTRA 特定运行的日志。

要显示有关每个任务的管道执行运行时日志的以下详细信息,请单击在此处输入图像描述状态列。

管道执行运行时日志

注意:日志会根据管道数量和 snapplex 属性中配置的大小不断滚动到备份。

参考:


用于捕获时间的自定义日志记录

但是,如果您想在日志中获取可以生成报告的时间,那么您必须将其添加到您的 ULTRA 管道逻辑中(或使用和使用类似于您启用/禁用 ULTRA 任务的 SnapLogic 日志记录 API )。

我们有类似的要求,我们获取每个快照执行的时间,然后将它们转储到一个文件中,然后我们可以在需要时读取/处理该文件。这使我们能够更好地控制要记录的内容以及我们希望数据的外观。唯一的缺点是它还给代码增加了很多复杂性。

关于这种方法需要记住的几点:

  • 不要在 ULTRA 管道中使用文件写入器快照,因为您可能会丢失沿袭信息并导致管道失败
  • 创建一个简单的轻量级通用管道来进行日志记录,然后在您的 ULTRA 管道中使用Pipeline Execute snap 来利用这个通用管道
  • 不要重复使用日志管道的相同执行
  • 将日志信息作为管道参数传递到此管道,而不是直接将其传递到打开的输入视图;不要保持公共管道的输入和输出打开
  • 另外,请确保您在公共管道中捕获管道参数,以便您可以在仪表板中查看捕获的参数
于 2020-01-09T15:44:23.673 回答