如何以编程方式从Azure Synapse管道中检索错误?

xytpbqjk  于 2023-08-07  发布在  其他
关注(0)|答案(1)|浏览(112)

如何以编程方式检索每次运行azure synapse管道时的错误消息?显然,如果这是一个普通的二进制文件,我可以通过从shell Package 器执行二进制文件来重定向stderr和/或stdout,但是这里并不那么简单,因为这是基于基于云的azure synapse pipeline触发器每天自动启动的。
我有许多管道,希望在不修改底层管道本身的情况下实现这一点(但如果必须的话,我会这样做)
有什么建议吗?是的,突触管道是一个无代码的解决方案,但是我需要访问错误来驱动我的下游处理

s71maibg

s71maibg1#

在Azure SDK中,在Artifacts命名空间下,您可以使用PipelineRunClient类来获取有关运行的信息。
下面是我用来捕获运行状态的一些代码,但它也可以用于其他属性。

protected async Task<PipelineRun> GetRunAsync(string runId)
{
    var run = await Client.GetPipelineRunAsync(runId);
    return run.Value;
}

public async Task<string> GetStatusAsync(string runId)
{
    var run = await GetRunAsync(runId);
    return run.Status;
}

字符串
本例中的 Client 对象是PipelineRunClient。run.Value 是一个PipelineRun对象,包含以下属性:

的数据
我没有测试过它,但我假设如果 Status 为Failed,Message 属性将包含错误消息文本。

相关问题