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

如何通过Azure/Synapse API按单元格顺序获取Notebook运行输出用于审计排障

获取Azure Synapse Notebook单元格级完整输出的实操方案

需求明确

  • 对所有Synapse管道运行执行后处理,直接审计每个Notebook单元格的输出(无需生成邮件等额外产物)
  • 基于单元格内容(日志条目、堆栈跟踪)实现自动化+人工深度故障排查
  • 需支持访问按执行顺序组织的单元格级输出结构的API,覆盖任意单元格执行失败的场景

可行方案:Azure REST API「Activity Runs - Query By Pipeline Run」

核心逻辑

该接口的output字段会返回Notebook活动的完整执行数据,其中包含按单元格顺序排列的输出内容,完全匹配需求。

调试步骤

  1. 构造请求URL
    POST https://<你的工作区名称>.dev.azuresynapse.net/pipelineruns/<管道运行ID>/queryActivityRuns?api-version=2020-12-01
    
  2. 请求体配置
    过滤出Notebook类型的活动,确保按执行时间排序:
    {
      "filters": [
        {
          "operand": "ActivityType",
          "operator": "Equals",
          "values": ["Notebook"]
        }
      ],
      "orderBy": [
        {
          "orderBy": "ActivityRunStart",
          "order": "Asc"
        }
      ],
      "pageSize": 100
    }
    
  3. 解析单元格输出
    响应的output.notebookOutput.cells数组就是按顺序排列的单元格执行结果,每个元素包含:
    • cellIndex:单元格的顺序索引
    • cellType:单元格类型(代码/Markdown)
    • outputs:单元格的输出内容(含日志、错误堆栈)
    • status:单元格执行状态(成功/失败)

关键注意点

  • 调用API的身份需拥有Synapse工作区的Synapse Administrator或Synapse Contributor权限
  • 若管道包含多个Notebook活动,可在请求体中添加ActivityName过滤条件精准定位
  • 失败单元格的outputs字段会包含完整的错误堆栈,直接用于故障排查

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 17:19:53