如何以编程方式跟踪错误消息/

时间:2019-02-04 21:19:04

标签: azure-data-factory-2

我有一个带有“失败”输出的“查找”活动,该活动执行“存储过程”活动。 “存储过程”活动记录失败。如何以编程方式获取错误的Lookup活动的名称以及错误消息(如存储过程活动的输入参数中一样)?谢谢。

1 个答案:

答案 0 :(得分:0)

您可以按照示例sdk代码here的操作从运行在管道中的活动中获取错误消息。

1。运行“查找”活动管道。

CreateRunResponse runResponse = client.Pipelines.CreateRunWithHttpMessagesAsync(resourceGroup, dataFactoryName, pipelineName).Result.Body;
Console.WriteLine("Pipeline run ID: " + runResponse.RunId);

2。如果错误消息崩溃了,请获取该错误消息。

List<ActivityRun> activityRuns = client.ActivityRuns.ListByPipelineRun(
resourceGroup, dataFactoryName, runResponse.RunId, DateTime.UtcNow.AddMinutes(-10), DateTime.UtcNow.AddMinutes(10)).ToList(); 
if (pipelineRun.Status == "Succeeded")
Console.WriteLine(activityRuns.First().Output);
else
Console.WriteLine(activityRuns.First().Error);

3。然后使用上述消息作为参数运行另一个sp活动管道。

Dictionary<string, object> parameters = new Dictionary<string, object>
{
    { "errorMessage", activityRuns.First().Error}
};
CreateRunResponse runResponse = client.Pipelines.CreateRunWithHttpMessagesAsync(resourceGroup, dataFactoryName, pipelineName, parameters: parameters).Result.Body;
Console.WriteLine("Pipeline run ID: " + runResponse.RunId);