簡體   English   中英

Azure 數據工廠 V2 邏輯或

[英]Azure Data Factory V2 logical OR

是否可以為 Azure 數據工廠 V2 管道活動創建邏輯或? 例如,我們有兩個復制活動,如果其中任何一個活動失敗,數據工廠都應該調用 API。

在此處輸入圖像描述

我們可以。

您可以添加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') )

如果條件為真,則添加真正的活動來調用 API: 在此處輸入圖像描述

如果所有復制活動都“成功”(條件為假)並且我們不想做任何事情,我們不需要添加假活動。

希望這可以幫助。

不是我知道的。 當一個活動有多個條件時,它們被視為 AND 條件,這意味着兩個復制活動都必須無法執行 web 活動。

執行此操作的一種常見模式是創建一個封裝邏輯以報告錯誤的管道,並從每個活動的失敗中調用它,將錯誤 output 捕獲到管道參數。

希望這有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM