使用 Azure Data Factory 或 Azure Synapse 管線傳送電子郵件
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
在管線執行期間或之後,通常需要傳送通知。 通知會提供主動式警示,並減少需要回應式監視來探索問題。 本文說明如何從 Azure Data Factory 或 Azure Synapse 管線設定電子郵件通知。
必要條件
- Azure 訂用帳戶。 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶。
- 標準邏輯應用程式工作流程。 若要從管線觸發電子郵件的傳送,請使用 Azure Logic Apps 來定義工作流程。 如需建立標準邏輯應用程式工作流程的詳細資訊,請參閱建立範例標準邏輯應用程式工作流程。
在邏輯應用程式中建立電子郵件工作流程
建立名為 SendEmailFromPipeline
的標準邏輯應用程式工作流程。 新增名為 When an HTTP request is received
的 [要求] 觸發程序,並新增名為 Send an email (V2)
的 Office 365 Outlook 動作。
在 [要求] 觸發程序中,為 [Request Body JSON Schema
] 屬性提供此 JSON:
{
"properties": {
"dataFactoryName": {
"type": "string"
},
"message": {
"type": "string"
},
"pipelineName": {
"type": "string"
},
"receiver": {
"type": "string"
}
},
"type": "object"
}
工作流程設計工具中的 [要求] 觸發程序看起來應該如下:
對於 [傳送電子郵件 (V2)] 動作,使用要求本文 JSON 結構描述中的屬性來自訂您要格式化電子郵件的方式:
儲存工作流程。 瀏覽至工作流程的 [概觀] 頁面。 然後記下工作流程 URL,如下圖中醒目提示所示:
注意
若要尋找工作流程 URL,您必須瀏覽至工作流程本身,而不只是包含工作流程的邏輯應用程式。 在邏輯應用程式執行個體的 [工作流程] 頁面中,選取工作流程然後導覽至其 [概觀] 頁面。
建立管線以觸發邏輯應用程式工作流程
在您建立可傳送傳送電子郵件的邏輯應用程式工作流程之後,就可以使用 Web 活動從管線將其加以觸發。
建立新的管線,並在 [一般] 類別下尋找 [Web] 活動,以將其拖曳至編輯畫布上。
選取新的 [Web1] 活動,然後選取 [設定] 索引標籤。
提供您先前在 [URL] 欄位中所建立之邏輯應用程式工作流程的 URL。
為本文提供下列 JSON:
{ "message" : "This is a custom dynamic message from your pipeline with run ID @{pipeline().RunId}.", "dataFactoryName" : "@{pipeline().DataFactory}", "pipelineName" : "@{pipeline().Pipeline}", "receiver" : "@{pipeline().parameters.receiver}" }
使用動態運算式為管線中的事件產生實用的訊息。 請注意,此處的 JSON 格式與您在邏輯應用程式中定義的 JSON 格式相符,您也可以視需求自訂這些格式。
選取管線設計工具的背景區域,以選取管線屬性頁面並新增稱為接收者的新參數,並提供電子郵件地址作為其預設值。
在此範例中,我們會從任意定義的管線參數提供接收者電子郵件。 接收者值可以取自任何運算式,甚至是連結的資料來源。
發佈管線後再手動觸發該程序,以確認電子郵件如預期般傳送。
使用系統變數和運算式新增動態訊息
@activity("CopyData").output.errors[0].Message
@activity("DataFlow").error.Message
上述運算式會從 [複製] 活動失敗傳回相關的錯誤訊息,接著便可重新導向至傳送電子郵件的 [Web] 活動。 如需詳細資訊,請參閱[複製] 活動輸出屬性文章。