Skip to main content

规划元数据引用

在规划的 HTTP 任务正文和标题中,您可引用规划运行的以下元数据元素,以获取更多上下文信息。

注意

在任务中,您可引用整个规划的元数据,以及当前任务上游任务的元数据。如果规划中使用了分支结构,一个分支的任务无法引用另一分支任务的元数据。所有任务均可引用整个规划运行的元数据。

通用语法

所有规划元数据引用均遵循以下基础语法:

{{$plan.path.to.reference}}
  • 所有引用均可在 Alteryx One Platform 中使用 $ 输入。这些引用在代码定义中会转换为 {{$ 格式。双大括号构成了元数据替换的环境。

    提示

    Alteryx One 中,您可通过键入 $ 开始引用。

  • 层级节点使用英文句点 . 分隔。

包含空格的引用值必须按以下方式列出:

{{$plan.path['path with white space in it'].rest.of.path}}

注释:

  • Alteryx One 中,您可使用双引号来指定包含空格的值。但这些双引号在实际请求中会被转义。使用单引号更安全且更一致。

引用基础资产的显示名称时,通常会出现含空格的值。

$plan 引用

此类引用适用于规划定义或当前规划运行。

要输入的文本:

$plan.

参考

描述

name

所运行规划的名称。

duration

规划已运行或截至目前的运行时长。

提示

如需返回更易读的时长格式,请使用以下引用:

{{$plan.duration|humanizeDuration}}

id

规划的内部标识符。

startTime

规划运行开始的时间戳。

url

Alteryx One 中规划的 URL。

runId

本次规划运行的内部标识符。

user

启动本次运行的用户的内部标识符。

taskCount

规划运行中的任务数量。

$http 引用

此类引用适用于规划运行中的 HTTP 任务。

输入以下内容,即可查看当前规划运行中已执行的 HTTP 任务对应的两位字母代码:

$http_ax.

参考

描述

name

HTTP 任务的名称。

status

任务执行当前状态。

duration

任务已运行或截至目前的运行时长。

startTime

任务开始的时间戳。如果任务尚未开始,则值为 null。

endTime

任务结束的时间戳。如果任务尚未结束,则值为 null。

statusCode

接收端点返回的状态码(如有)。

response

响应信息。见下文。

响应引用

此类引用适用于任务执行返回的响应。

输入以下内容,即可查看当前规划运行中已执行的 HTTP 任务对应的两位字母代码:

$http_ax.response.

参考

描述

body

响应正文。

json

JSON 格式的响应版本

headers

响应返回的标头

$slack 引用

您可通过以下引用类型,引用当前规划运行中 Slack 任务的元数据:

$slack_ax.

支持的元数据与 HTTP 任务的元数据相同。详情请参阅上一节。

$workflow 引用

此类引用适用于规划运行中的工作流任务。

输入以下内容,即可查看当前规划运行中已执行的工作流任务的两位字母代码:

$wf.

参考

描述

name

工作流任务的名称。

status

任务执行当前状态。

duration

任务已运行或截至目前的运行时长。

startTime

任务开始的时间戳。如果任务尚未开始,则值为 null。

endTime

任务结束的时间戳。如果任务尚未结束,则值为 null。

$desktopworkflow 引用

此类引用适用于规划运行中的 Desktop 工作流任务。

输入以下内容,即可查看当前规划运行中已执行的工作流任务的两位字母代码:

$designer_desktop.

参考

描述

name

工作流任务的名称。

status

任务执行当前状态。

duration

任务已运行或截至目前的运行时长。

startTime

任务开始的时间戳。如果任务尚未开始,则值为 null。

endTime

任务结束的时间戳。如果任务尚未结束,则值为 null。

output URL

用于在 Designer Desktop 中访问输出的 URL。

$aidataset 引用

此类引用适用于规划运行中的 Auto Insights 任务。

输入以下内容,即可查看当前规划运行中已执行的 Auto Insights 任务列表:

$ai.

参考

描述

name

Auto Insights 任务的名称。

status

任务执行当前状态。

duration

任务已运行或截至目前的运行时长。

startTime

任务开始的时间戳。如果任务尚未开始,则值为 null。

endTime

任务结束的时间戳。如果任务尚未结束,则值为 null。

$flow 引用

此类引用适用于规划运行中的工作流任务。

输入以下内容,即可查看当前规划运行中已执行的工作流任务的两位字母代码:

$flow_ax.

参考

描述

name

工作流任务的名称。

status

任务执行当前状态。

duration

任务已运行或截至目前的运行时长。

startTime

任务开始的时间戳。如果任务尚未开始,则值为 null。

endTime

任务结束的时间戳。如果任务尚未结束,则值为 null。

jobIds

作为此流程任务组成部分运行的作业的内部标识符。

jobUrl

Alteryx One 中该作业的 URL。

flowName

此工作流任务对应的基础工作流名称。

output

工作流任务输出的元数据。见下文。

params

您可在任务中引用工作流中创建的参数。

输出引用

此类引用适用于规划运行期间,在其工作流任务中生成的输出。

对于输出为 My Output Name7p 工作流任务,输入以下内容:

$flow_7p['My Output Name'].

参考

描述

name

工作流的名称。

status

工作流的当前状态。

duration

工作流执行已运行或截至目前的时长。

startTime

工作流开始执行的时间戳。如果尚未开始运行,则值为 null。

endTime

工作流执行结束的时间戳。如果任务尚未结束,则值为 null。

lastUpdate

上次修改工作流的时间戳。

jobIds

该工作流已运行或正在运行的作业的内部标识符。可包含多个标识符。

user

执行该作业的用户的内部标识符。

jobType

已执行的作业类型。值:

  • manual – 通过 Alteryx One 执行。

  • scheduled – 按定义的计划执行。

  • api – 通过 API 执行。

fileSize

如果输出生成一个或多个文件,该值为输出文件的大小 (KB)。

environment

作业执行的运行环境。

columnCount

输出中生成的列数。

rowCount

输出中生成的行数。

dataTypeCount

输出中检测到的 Alteryx 数据类型的数量。

validValuesCount

输出中的有效值数量。

mismatchedValuesCount

输出中不匹配值的数量。

emptyValuesCount

输出中缺失值或空值的数量。

columns

所选工作流输出的列信息。见下文。

sources

导入数据集的源文件名和表信息。见下文。

publishing actions

为输出定义的发布操作的相关数据。见下文。

输出列引用

提示

为输出列计算的指标也可能出现在输出数据的配置文件中。

输出列可使用以下语法进行引用:

$flow_7p['My Output Name'].output.

参考

描述

name

列名称

type

列的数据类型

validValuesCount

列中有效值的数量

mismatchedValuesCount

列中不匹配值的数量

emptyValuesCount

列中空值的数量

topValues

列中高频值的列表

minimumValue

列中的最小值

lowerQuartileValue

列中的第 25 百分位值

medianValue

列中的第 50 百分位值

upperQuartileValue

列中的第 75 百分位值

maximumValue

列中的最大值

来源引用

此类引用适用于生成输出所用的数据源文件或表。

参考

描述

name

数据源文件或表的名称。

发布操作引用

此类引用适用于为输出定义的发布操作。

参考

描述

name

发布操作的名称。

action

发布操作的定义。

location

发布操作的目标位置。

type

发布操作的类型。

探索元数据

您可使用以下函数和方法进一步探索规划执行返回的元数据。

元数据函数

以下函数可用于选择元数据引用,以进一步筛选原始值。

humanizeDuration

原始格式下,duration 元数据引用的返回值示例如下:

PT7.523S

您可以使用 HumanizeDuration 函数,将上述内容呈现为更易读的格式:

{{ $plan.duration | humanizeDuration }}

应用于第一个值后的输出如下:

7.523 seconds

uuid

您可生成通用唯一标识符,并将其作为消息有效载荷的一部分发送:

{{ uuid() }}

元数据结构

部分元数据引用会返回复杂或嵌套对象,数据格式示例如下:

[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

在此类情况下,基础引用不会公开对象内部的嵌套数据。如需进一步探索,您可使用以下任一解决方案:

文本格式:对返回的对象创建 for 循环进行遍历:

{% for value in $flow_6f.Job.columns.MyColumnName.topValues %}[{{value.key}}, {{value.count}}] {% endfor %}

JSON 格式:在引用末尾添加 | dump 命令。您可以修改以下示例引用,并尝试将其插入到正文文本框中:

{{$flow_6f.Job.columns.MyColumnName.topValues | dump | replace('"', '\"')}}

提示

数据返回后,您可使用循环结构来检索特定值以进行展示。

如需了解详情,请转至 https://mozilla.github.io/nunjucks/templating.html#dump

参数引用

工作流参数

要在工作流任务中引用工作流参数,可使用以下格式:

$plan.params.<myParamName>

环境参数

您可在规划任务元数据中按名称引用环境参数。例如:

env.MyEnvironmentParameter1

其他引用

规划元数据引用信息基于 Nunjucks 模板语言,该语言提供了附加功能,例如循环、条件、过滤器和辅助函数。

注意

这些附加功能由模板语言提供,但其在 Alteryx One 内的实现尚未经过认证。对于本页未列出的 Nunjucks 功能,请先在开发环境中进行实验。

如需了解详情,请转至 https://mozilla.github.io/nunjucks/templating.html