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

Azure Data Factory Lookup活动如何获取SQL执行抛出的错误数据?

Azure Data Factory Lookup 活动无法捕获存储过程THROW异常输出问题

我正在使用 Azure Data Factory 和 Azure Database Instance 进行开发。
我配置的 Data Factory Lookup 活动会调用可能执行失败的存储过程,当故障发生时,存储过程的CATCH代码块会执行THROW抛出异常。我在 Azure Data Factory 客户端查看错误弹窗时可以看到THROW的输出内容,但目前无法通过表达式访问该输出,经测试确认该内容没有被正常对外暴露。

已尝试的错误获取表达式

@activity('activityName').output.firstRow.error
@activity('activityName').output.firstRow.errors
@activity('activityName').error.message
@activity('activityName').errors.message
@activity('activityName').errors.number
@activity('activityName').ErrorCode
@activity('activityName').Errors

弹窗返回的错误详情

Failure happened on 'Source' side. ErrorCode=SqlOperationFailed,
'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,
Message=A database operation failed with the following error:
'blabla', Source=,''Type=System.Data.SqlClient.SqlException,
Message=blabla, Source=.Net SqlClient Data Provider,
SqlErrorNumber=245, Class=16, ErrorCode=-2146232060, State=1,
Errors=[{ Class=16, Number=245,State=1,Message=blabla,},],'

所需的错误数据在报错详情中明确存在,但无法通过现有表达式访问,且当前官方文档存在缺失:仅提供了 CopyActivity 的错误输出访问说明,没有 LookupActivity 的相关参考内容。

核心需求

  • 实现错误日志记录:部分场景下存储过程执行成功需要向 Data Factory 返回输出,因此必须捕获THROW抛出的错误数据
  • 经测试发现,先向 Data Factory 返回SELECT结果后再执行THROW,无法将该任务标记为失败状态,需要适配该场景的异常处理逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:15:00