规划元数据引用
在规划的 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 Name 的 7p 工作流任务,输入以下内容:
$flow_7p['My Output Name'].
参考 | 描述 |
|---|---|
name | 工作流的名称。 |
status | 工作流的当前状态。 |
duration | 工作流执行已运行或截至目前的时长。 |
startTime | 工作流开始执行的时间戳。如果尚未开始运行,则值为 null。 |
endTime | 工作流执行结束的时间戳。如果任务尚未结束,则值为 null。 |
lastUpdate | 上次修改工作流的时间戳。 |
jobIds | 该工作流已运行或正在运行的作业的内部标识符。可包含多个标识符。 |
user | 执行该作业的用户的内部标识符。 |
jobType | 已执行的作业类型。值:
|
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。