如何从 For Each 活动的 ADF 管道捕获输出查询

问题描述 投票:0回答:1

我在 ADF 上有一个带有

For Loop
活动的管道,并且在内部有一个
Data Flow
运行 Kusto 查询。在此循环中,我使用一个数组中包含 10 个字符串的变量,以便我的数据流将基于这些值作为参数运行。

发生的情况是,循环中的某些运行失败,而其他一些运行正常。

如下图所示:

如何查看数据流中运行的查询以及我正在使用的所有参数和表达式?我的意思是,最终查询作为输出。我想在我的 Kusto 上运行相同的查询,看看是否有问题。

azure-data-factory pipeline kql azure-data-explorer
1个回答
0
投票

数据流活动不会在其输入或输出中给出输入查询。作为解决方法,请尝试以下方法。

在数据流中建立一个分支并使用派生列转换。在此创建一个列并为其提供相同的查询表达式

您可以通过将分支添加到当前源来添加它,或者您可以创建另一个示例源并继续相同的方法。

enter image description here

这里我以SQL查询为例。

它将构建查询并将查询字符串存储在

query
列中。使用 cache sink 在管道级别了解此查询。该接收器的写入顺序应为 1。

enter image description here

在缓存接收器映射中,使用基于规则的映射过滤

query
列,如下所示。

enter image description here

在“数据流”活动中,将日志记录设置为“无”并仅选择第一行。

enter image description here

现在,您可以在 Dataflow 输出缓存接收器中找到输入查询。

enter image description here

使用下面的表达式在管道中使用它。

@activity('Data flow1').output.runStatus.output.sinkCache.value[0].query
© www.soinside.com 2019 - 2024. All rights reserved.