public List <ActivityRunsQueryResponse> GetActivityRuns(string pipelineName, string runId, RunFilterParameters filterParameters) { List <ActivityRunsQueryResponse> activityRuns = new List <ActivityRunsQueryResponse>(); string ContinuationToken = null; do { var response = _pipelineRunClient.QueryActivityRuns(pipelineName, runId, filterParameters).Value; ContinuationToken = response.ContinuationToken; filterParameters.ContinuationToken = ContinuationToken; activityRuns.Add(response); }while (!string.IsNullOrWhiteSpace(ContinuationToken)); return(activityRuns); }
public ActivityRunsQueryResponse GetActivityRuns(string pipelineName, string runId, RunFilterParameters filterParameters) { return(_pipelineRunClient.QueryActivityRuns(pipelineName, runId, filterParameters).Value); }
public override PipelineErrorDetail GetPipelineRunActivityErrors(PipelineRunRequest request) { PipelineRun pipelineRun = _pipelineRunClient.GetPipelineRun ( request.RunId ); //Defensive check PipelineNameCheck(request.PipelineName, pipelineRun.PipelineName); _logger.LogInformation("Create pipeline Activity Runs query filters."); RunFilterParameters filterParams = new RunFilterParameters ( request.ActivityQueryStart, request.ActivityQueryEnd ); _logger.LogInformation("Querying SYN pipeline for Activity Runs."); ActivityRunsQueryResponse queryResponse = _pipelineRunClient.QueryActivityRuns ( request.PipelineName, request.RunId, filterParams ); //Create initial output content PipelineErrorDetail output = new PipelineErrorDetail() { PipelineName = request.PipelineName, ActualStatus = pipelineRun.Status, RunId = request.RunId, ResponseCount = queryResponse.Value.Count }; _logger.LogInformation("Pipeline status: " + pipelineRun.Status); _logger.LogInformation("Activities found in pipeline response: " + queryResponse.Value.Count.ToString()); //Loop over activities in pipeline run foreach (ActivityRun activity in queryResponse.Value) { if (activity.Error == null) { continue; //only want errors } //Parse error output to customise output var json = JsonConvert.SerializeObject(activity.Error); Dictionary <string, object> errorContent = JsonConvert.DeserializeObject <Dictionary <string, object> >(json); _logger.LogInformation("Activity run id: " + activity.ActivityRunId); _logger.LogInformation("Activity name: " + activity.ActivityName); _logger.LogInformation("Activity type: " + activity.ActivityType); _logger.LogInformation("Error message: " + errorContent["message"].ToString()); output.Errors.Add(new FailedActivity() { ActivityRunId = activity.ActivityRunId, ActivityName = activity.ActivityName, ActivityType = activity.ActivityType, ErrorCode = errorContent["errorCode"].ToString(), ErrorType = errorContent["failureType"].ToString(), ErrorMessage = errorContent["message"].ToString() }); } return(output); }