簡體   English   中英

Azure ADF V2 - 完成時的活動

[英]Azure ADF V2 - Activity on completion

我正在創建一個小項目來跟蹤 ETL 日志。 我創建了一個帶有參數和自定義 SQL 表的存儲過程來加載 ETL 日志。

在 ADF 中,我有多個活動。 最后,我使用帶有映射到 ADF 系統變量(如管道名稱、錯誤詳細信息等)的參數的存儲過程活動來登錄 SQL 表。

問題:每當中間的活動出現錯誤時,管道就會失敗並且不會觸及存儲過程活動。 就像,假設我有 Copy1、Copy2、Copy3 和最后ETLLog_StoredProcedure 如果 Copy2 失敗,管道運行會在 Copy2 處停止,並且不會運行存儲過程活動。

我已使用 Activity-On-Completion 連接將所有 Copy 活動連接到ETLLog_StoredProcedure 看看下面的圖片。

期望:即使管道失敗/成功,我也需要調用存儲過程活動,以便我可以記錄管道的狀態。

示例 ADF ETLLog

數據工廠依賴項用作 AND 條件。 這意味着一旦所有 3 個活動都“完成”(成功或失敗),將運行存儲過程。 但在您的場景中,第二個活動失敗,第三個活動從未運行(甚至沒有失敗),這就是存儲過程活動未運行的原因。

您可以通過此實現您正在尋找的內容,根據失敗發生的位置(或顯示最后一個成功)更改存儲過程的參數,例如:

在 ADF 中記錄錯誤

還有其他方法可以實現這一點,但它們需要對 ADF 變量和函數有更多的了解,我認為這是最簡單的。

希望這有幫助!!

我添加了圖片以便更好地理解ADFPicturePipelineRun

要在管道中只有一個存儲過程調用,您只需添加選項“跳過”。

因此,通常活動“復制數據3”有2個選項來完全填充執行活動“存儲過程1”的條件,完成或跳過。 當“復制數據1”和“復制數據2”都完成並且“復制數據3”被跳過時,“存儲過程1”被執行。

暫無
暫無

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

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