次の方法で共有


Azure Data Factory または Azure Synapse パイプラインを使用して電子メールを送信する

適用対象: Azure Data Factory Azure Synapse Analytics

ヒント

企業向けのオールインワン分析ソリューション、Microsoft Fabric の Data Factory をお試しください。 Microsoft Fabric は、データ移動からデータ サイエンス、リアルタイム分析、ビジネス インテリジェンス、レポートまで、あらゆるものをカバーしています。 無料で新しい試用版を開始する方法について説明します。

多くの場合、パイプラインの実行中または実行後に通知を送信する必要があります。 通知では、予防的アラートが提供され、問題を検出するための事後対応型の監視の必要性が軽減されます。  この記事では、Azure Data Factory またはAzure Synapse パイプラインからの電子メール通知を構成する方法を説明します。 

前提条件

  • Azure サブスクリプション。 Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。
  • Standard ロジック アプリ ワークフロー。 パイプラインからメール送信をトリガーするには、Azure Logic Apps を使用してワークフローを定義します。 Standard ロジック アプリ ワークフローの作成の詳細については、Standard ロジック アプリ ワークフローの例の作成に関するページを参照してください。

ロジック アプリでメール ワークフローを作成する

SendEmailFromPipeline という名前の Standard ロジック アプリ ワークフローを作成します。 When an HTTP request is received という名前の要求トリガーを追加し、Send an email (V2) という名前の Office 365 Outlook アクションを追加します。

要求トリガーと [メールを送信する (V2)] アクションを含むロジック アプリ ワークフロー デザイナーを示しています。

要求トリガーで、Request Body JSON Schema プロパティにこちらの JSON を指定します。

{
    "properties": {
        "dataFactoryName": {
            "type": "string"
        },
        "message": {
            "type": "string"
        },
        "pipelineName": {
            "type": "string"
        },
        "receiver": {
            "type": "string"
        }
    },
    "type": "object"
}

ワークフロー デザイナーの要求トリガーは、次のようになります。

[要求本文の JSON スキーマ] フィールドが設定されたワークフロー デザイナーの要求トリガーを示しています。

[メールを送信する (V2)] アクションでは、要求本文の JSON スキーマのプロパティを使用して、メールの書式設定方法をカスタマイズします。

ワークフロー デザイナーの [メールを送信する (V2)] アクションを示しています。

ワークフローを保存します。 ワークフローの [概要] ページを参照します。 以下の画像で強調されている [ワークフロー URL] をメモします。

[ワークフロー URL] が強調表示されたワークフローの [概要] タブを示しています。

Note

ワークフローの URL を検索するには、ワークフローを含むロジック アプリだけでなく、ワークフロー自体を参照する必要があります。 ロジック アプリ インスタンスの [ワークフロー] ページで、ワークフローを選択し、[概要] ページに移動します。

ロジック アプリ ワークフローをトリガーするパイプラインを作成する

メールを送信するロジック アプリ ワークフローを作成した後は、Web アクティビティを使用してパイプラインからそれをトリガーできます。

  1. 新しいパイプラインを作成し、 [全般] カテゴリの下にある [Web] アクティビティを見つけて編集キャンバスにドラッグします。

  2. 新しい [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 形式と一致し、必要に応じてこれらもカスタマイズすることができます。

    ロジック アプリ ワークフローの URL と JSON メッセージ本文を使用して構成された Web アクティビティを含むパイプラインを示しています。

  3. パイプライン デザイナーの背景領域を選択してパイプラインのプロパティ ページを選択し、receiver という新しいパラメーターを追加して、電子メール アドレスを [既定値] として指定します。

    この例では、任意に定義したパイプライン パラメーターから受信者の電子メールを指定します。 受信者の値は、任意の式から、またはリンクされたデータ ソースからも取得できます。

    パイプライン デザイナーの receiver パラメーターの構成を示しています。

  4. パイプラインを公開してから手動でトリガーし、電子メールが想定どおり送信されることを確認します。

    パイプラインを手動でトリガーする方法を示しています。

システム変数と式を使用して動的メッセージを追加する

システム変数を使用して、メッセージを動的にすることができます。 例:

  • @activity("CopyData").output.errors[0].Message

  • @activity("DataFlow").error.Message

上記の式では、エラーが発生したコピー アクティビティから関連するエラー メッセージが返されます。これを、電子メールを送信する Web アクティビティにリダイレクトすることができます。 詳細については、コピー アクティビティの出力のプロパティに関する記事を参照してください。

パイプラインから Teams 通知を送信する方法