如何在Azure Data Factory中实现管道失败时触发另一个管道
Azure Data Factory故障触发管道实现方案
核心逻辑
直接用ADF自带的失败触发机制,给Pipeline-A配置故障时自动调用运行Databricks notebook的目标管道,不用额外工具。
操作步骤
1. 给Pipeline-A添加失败触发器
- 打开Azure Data Factory Studio,进入Pipeline-A的编辑页面
- 点击顶部「添加触发器」→「新建/编辑」
- 切换到「失败时触发」标签页,勾选「启用失败时触发」选项
- 在「要触发的管道」下拉框中,选择负责运行Databricks notebook的目标管道
- 触发条件选择「任何失败」,覆盖Pipeline-A内所有活动故障的场景
- 保存触发器配置
2. 可选:传递故障信息到目标管道
如果需要把Pipeline-A的故障详情传给目标管道做分析或日志记录:
- 在「失败时触发」的「参数」区域点击「添加参数」,比如命名为
FailureDetails - 参数值选择系统变量,例如
@pipeline().FailureReason或者@activity('具体失败活动名称').Error.Message - 在目标管道中,通过
@pipeline().parameters.FailureDetails将参数传入Databricks notebook
3. 测试验证故障逻辑
- 手动让Pipeline-A执行失败(比如修改某个活动的配置导致报错)
- 查看ADF监控面板,确认Pipeline-A失败后目标管道是否自动启动
- 检查Databricks notebook的运行日志,验证故障信息是否正常接收
注意事项
- 确保ADF服务主体拥有调用目标管道、访问Databricks工作区的权限
- 无论Pipeline-A是定时触发还是手动触发,故障触发机制都能正常生效
- 可以给目标管道添加重试逻辑,避免因临时问题导致故障处理失败
内容的提问来源于stack exchange,提问作者Nanak Dutt
相关产品推荐
相关产品推荐

