You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AZ CLI查询ADF管道运行状态,如何仅获取名称、状态及时间?

解决AZ CLI查询ADF管道运行状态的字段筛选与格式化问题

你之前用--query参数无结果的原因是:ADF管道运行查询的返回数据中,所有运行记录都嵌套在value数组内,直接指定字段名无法定位到目标数据。以下是符合你需求的解决方法:

完整命令(输出指定格式)

az datafactory pipeline-run query-by-factory \
  --factory-name "adfname" \
  --filters operand="Status" operator="Equals" values="Failed" \
  --last-updated-after "2023-01-17T00:00:00.3345758Z" \
  --last-updated-before "2023-01-17T11:59:59.3686473Z" \
  --resource-group "rgname" \
  --query "value[].{PipelineName:pipelineName, Status:status, RunTime:lastUpdated}" \
  --output tsv | awk '{split($3, d, "-"); printf "%-20s -- %-10s -- %s/%s/%s %s\n", $1, $2, d[3], d[2], substr(d[1],3,2), substr($4,0,8)}'

各部分说明

  1. --query参数调整:
    通过value[]遍历所有运行记录,提取你需要的三个字段:pipelineName(管道名)、status(运行状态)、lastUpdated(最后更新时间,若需运行开始时间可替换为runStart),并给字段定义别名方便后续处理。

  2. --output tsv:
    将查询结果以制表符分隔格式输出,避免JSON结构干扰,方便后续格式化处理。

  3. awk命令格式化:
    拆分ISO格式的日期字符串,将YYYY-MM-DD转换为DD/MM/YY格式,同时截取时间部分,通过printf实现字段对齐,最终输出你要求的格式。

可选:简化表格输出

如果不需要自定义分隔格式,仅需清晰展示字段,可改用表格输出:

az datafactory pipeline-run query-by-factory \
  --factory-name "adfname" \
  --filters operand="Status" operator="Equals" values="Failed" \
  --last-updated-after "2023-01-17T00:00:00.3345758Z" \
  --last-updated-before "2023-01-17T11:59:59.3686473Z" \
  --resource-group "rgname" \
  --query "value[].{PipelineName:pipelineName, Status:status, RunTime:lastUpdated}" \
  --output table

内容的提问来源于stack exchange,提问作者Meetkumar Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 15:35:46