[英]Azure Data Factory V2 logical OR
我們可以。
您可以添加If 條件來創建邏輯管道。 如果兩個副本活動 output 狀態包含“失敗”,則調用 API。
正如我們所知,每個激活的副本都有 output 具有以下詳細信息:
"executionDetails": [
{
"source": {
"type": "AzureSqlDatabase",
"region": "East US"
},
"sink": {
"type": "AzureSqlDatabase",
"region": "East US"
},
"status": "Succeeded",
"start": "2020-07-08T05:37:33.9079553Z",
"duration": 4,
"usedDataIntegrationUnits": 4,
"usedParallelCopies": 1,
"profile": {
"queue": {
"status": "Completed",
"duration": 2
},
"transfer": {
"status": "Completed",
"duration": 1,
"details": {
"readingFromSource": {
"type": "AzureSqlDatabase",
"workingDuration": 0,
"timeToFirstByte": 0
},
"writingToSink": {
"type": "AzureSqlDatabase",
"workingDuration": 0
}
}
}
},
我們可以將executionDetails:{"status": "Succeeded"}
設置為 if 條件激活:
表達式:無論哪個活動失敗,所有 API:
@or(equals(activity('Copy data1').output.executionDetails.status,'Failed'),equals(activity('Copy data2').output.executionDetails.status,'Failed') )
如果所有復制活動都“成功”(條件為假)並且我們不想做任何事情,我們不需要添加假活動。
希望這可以幫助。
不是我知道的。 當一個活動有多個條件時,它們被視為 AND 條件,這意味着兩個復制活動都必須無法執行 web 活動。
執行此操作的一種常見模式是創建一個封裝邏輯以報告錯誤的管道,並從每個活動的失敗中調用它,將錯誤 output 捕獲到管道參數。
希望這有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.