Partilhar via


Enviar um email com um pipeline do Azure Data Factory ou do Azure Synapse

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

Muitas vezes, é necessário enviar notificações durante ou após a execução de um pipeline. A notificação fornece alertas proativos e reduz a necessidade de monitoramento reativo para descobrir problemas.  Este artigo mostra como configurar notificações por email de um pipeline do Azure Data Factory ou do Azure Synapse. 

Pré-requisitos

  • Subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
  • Fluxo de trabalho padrão do aplicativo lógico. Para acionar o envio de um email do pipeline, deve usar o Azure Logic Apps para configurar o fluxo de trabalho. Para obter detalhes sobre como criar um fluxo de trabalho de aplicativo lógico padrão, consulte Criar um exemplo de fluxo de trabalho de aplicativo lógico padrão.

Criar o fluxo de trabalho de email em seu aplicativo lógico

Crie um fluxo de trabalho de aplicativo lógico padrão chamado SendEmailFromPipeline. Adicione o gatilho de solicitação chamado When an HTTP request is receivede adicione a ação do Office 365 Outlook chamada Send an email (V2).

Mostra o editor de fluxo de trabalho da aplicação lógica com o gatilho de solicitação e a ação Enviar um email (V2).

No Acionador de Solicitação, forneça este JSON para a propriedade Request Body JSON Schema.

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

O gatilho Request no designer de fluxo de trabalho deve ter esta aparência:

Mostra o designer de fluxo de trabalho para o gatilho Request com o campo Request Body JSON Schema preenchido.

Para a ação Enviar um e-mail (V2), personalize como deseja formatar o e-mail, usando as propriedades do esquema JSON do corpo da solicitação:

Mostra o designer de fluxo de trabalho para a ação Enviar um email (V2).

Guarde o fluxo de trabalho. Navegue até a página Visão geral do fluxo de trabalho. Anote o URL do fluxo de trabalho, destacado na imagem abaixo:

Mostra a página Visão geral do fluxo de trabalho com a URL do fluxo de trabalho realçada.

Nota

Para localizar a URL do fluxo de trabalho, você deve navegar até o fluxo de trabalho em si, não apenas o aplicativo lógico que o contém. Na página Fluxos de trabalho da instância do aplicativo lógico, selecione o fluxo de trabalho e navegue até a página Visão geral.

Criar um pipeline para acionar o fluxo de trabalho da aplicação lógica.

Depois de criares o fluxo de trabalho do logic app para enviar e-mail, podes acioná-lo a partir de um pipeline usando uma atividade da Web.

  1. Crie um novo pipeline e localize a atividade da Web na categoria Geral, para arrastá-la para a tela de edição.

  2. Selecione a nova atividade Web1 e, em seguida, selecione o separador Configurações.

    Forneça a URL do fluxo de trabalho do aplicativo lógico que você criou anteriormente no campo URL .

    Forneça o seguinte JSON para o corpo:

       {
        "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}"
       }
    

    Use expressões dinâmicas para gerar mensagens úteis para eventos em seus pipelines. Observe que o formato JSON aqui corresponde ao formato JSON definido no aplicativo lógico e você também pode personalizá-los conforme necessário.

    Mostra um pipeline com uma atividade da Web configurada com a URL do fluxo de trabalho do aplicativo lógico e o corpo da mensagem JSON.

  3. Selecione a área de fundo do editor de pipeline para acessar a página de propriedades do pipeline e adicionar um novo parâmetro chamado destinatário, definindo um endereço de e-mail como o seu valor padrão.

    Neste exemplo, fornecemos o e-mail do destinatário a partir de um parâmetro de pipeline que definimos arbitrariamente. O valor do recetor pode ser retirado de qualquer expressão, ou mesmo fontes de dados ligadas.

    Mostra a configuração do parâmetro receiver no designer de pipeline.

  4. Publique seu pipeline e acione-o manualmente para confirmar que o e-mail foi enviado conforme o esperado.

    Mostra como acionar manualmente o pipeline.

Adicionar mensagens dinâmicas com variáveis e expressões do sistema

Você pode usar variáveis e expressões do sistema para tornar suas mensagens dinâmicas. Por exemplo:

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

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

As expressões acima retornarão as mensagens de erro relevantes de uma falha da atividade de cópia, que podem ser redirecionadas para a sua atividade Web que envia o e-mail. Consulte o artigo Copiar propriedades de saída da atividade para obter mais detalhes.