如何单次调用获取Azure Data Factory全量pipeline及activity数据?
完全可以通过单次配置/批量调用的方式获取全量pipeline及对应activity的运行数据,无需针对单条pipeline逐一配置,以下是两种可直接落地的方案:
方案1:ADF内置诊断设置自动导出(推荐,零额外开发)
- 操作路径:进入对应ADF实例的管理界面,在左侧「监控」分类下找到「诊断设置」,点击添加新的诊断配置
- 日志类别勾选 Pipeline 运行日志、Activity 运行日志、触发器运行日志 三类,即可覆盖所有管道、活动的全量运行维度数据
- 导出目标直接选择你使用的Data Lake Storage Gen2账户,指定存储容器和路径后保存配置即可
- 配置生效后,日志会按小时分区自动落盘到Data Lake,格式为标准JSON,延迟普遍在5分钟以内,无需对现有120条管道做任何修改即可全量采集
- 导出的日志原生支持Power BI直接读取建模,无需额外做格式转换
方案2:ADF REST API批量拉取(适合需要自定义导出逻辑的场景)
- 调用
Pipeline Runs - Query By Factory接口,单次调用即可拉取指定时间窗口内的所有管道运行记录 - 拿到全量管道运行ID(
PipelineRunId)列表后,可批量调用Activity Runs - Query By Pipeline Run接口拉取对应管道下所有活动的运行数据 - 可以将拉取逻辑封装为Azure Function或者单独的ADF调度管道,按天/小时增量拉取后写入Data Lake,适配自定义的存储规则
- 注意:接口单次查询最大支持的时间窗口为30天,如需拉取超过45天的历史数据,建议按时间切片分批调用避免超时
Power BI性能分析建模建议
- 读取Data Lake内的JSON日志后,分别建立管道运行表、活动运行表,两个表通过
PipelineRunId字段关联 - 可快速统计管道平均运行时长、运行成功率、活动耗时TOP排行、峰值运行时段等核心性能指标
内容的提问来源于stack exchange,提问作者igi -iwe
相关产品推荐
相关产品推荐

