Een e-mailbericht verzenden met een Azure Data Factory- of Azure Synapse-pijplijn
VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics
Tip
Probeer Data Factory uit in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, business intelligence en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie .
Het is vaak nodig om meldingen te verzenden tijdens of na de uitvoering van een pijplijn. Melding biedt proactieve waarschuwingen en vermindert de noodzaak van reactieve bewaking om problemen te detecteren. In dit artikel wordt beschreven hoe u e-mailmeldingen configureert vanuit een Azure Data Factory- of Azure Synapse-pijplijn.
Vereisten
- Azure-abonnement. Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
- Standaardwerkstroom voor logische apps. Als u het verzenden van een e-mailbericht vanuit de pijplijn wilt activeren, gebruikt u Azure Logic Apps om de werkstroom te definiëren. Zie Een voorbeeldwerkstroom voor een logische app maken in Standard voor meer informatie over het maken van een werkstroom voor een logische standaard-app.
De e-mailwerkstroom maken in uw logische app
Maak een standaardwerkstroom voor logische apps met de naam SendEmailFromPipeline
. Voeg de aanvraagtrigger toe met de naam When an HTTP request is received
en voeg de Office 365 Outlook-actie toe met de naam Send an email (V2)
.
Geef in aanvraagtrigger deze JSON op voor de Request Body JSON Schema
eigenschap:
{
"properties": {
"dataFactoryName": {
"type": "string"
},
"message": {
"type": "string"
},
"pipelineName": {
"type": "string"
},
"receiver": {
"type": "string"
}
},
"type": "object"
}
De aanvraagtrigger in de werkstroomontwerper moet er als volgt uitzien:
Pas voor de actie Een e-mail verzenden (V2) aan hoe u het e-mailbericht wilt opmaken met behulp van de eigenschappen van het JSON-schema voor de hoofdtekst van de aanvraag:
Sla de werkstroom op. Blader naar de pagina Overzicht voor de werkstroom. Noteer de werkstroom-URL, gemarkeerd in de onderstaande afbeelding:
Notitie
Als u de werkstroom-URL wilt vinden, moet u naar de werkstroom zelf bladeren, niet alleen naar de logische app die deze bevat. Selecteer op de pagina Werkstromen van uw exemplaar van uw logische app de werkstroom en navigeer vervolgens naar de overzichtspagina.
Een pijplijn maken om uw werkstroom voor logische apps te activeren
Nadat u de werkstroom van de logische app hebt gemaakt om e-mail te verzenden, kunt u deze activeren vanuit een pijplijn met behulp van een webactiviteit .
Maak een nieuwe pijplijn en zoek de webactiviteit onder de categorie Algemeen om deze naar het bewerkingscanvas te slepen.
Selecteer de nieuwe web1-activiteit en selecteer vervolgens het tabblad Instellingen .
Geef de URL op van de werkstroom van de logische app die u eerder in het URL-veld hebt gemaakt.
Geef de volgende JSON op voor de hoofdtekst:
{ "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}" }
Gebruik dynamische expressies om nuttige berichten te genereren voor gebeurtenissen in uw pijplijnen. U ziet dat de JSON-indeling hier overeenkomt met de JSON-indeling die u in de logische app hebt gedefinieerd en u kunt deze ook naar wens aanpassen.
Selecteer het achtergrondgebied van de ontwerpfunctie voor pijplijnen om de pagina met pijplijneigenschappen te selecteren en voeg een nieuwe parameter met de naam ontvanger toe, waarbij een e-mailadres als standaardwaarde wordt opgegeven.
In dit voorbeeld geven we de ontvanger-e-mail op van een pijplijnparameter die we willekeurig definiëren. De ontvangerwaarde kan worden opgehaald uit elke expressie of zelfs gekoppelde gegevensbronnen.
Publiceer uw pijplijn en activeer deze handmatig om te bevestigen dat het e-mailbericht wordt verzonden zoals verwacht.
Dynamische berichten toevoegen met systeemvariabelen en expressies
U kunt systeemvariabelen en expressies gebruiken om uw berichten dynamisch te maken. Bijvoorbeeld:
@activity("CopyData").output.errors[0].Message
@activity("DataFlow").error.Message
De bovenstaande expressies retourneren de relevante foutberichten van een Copy-activiteit-fout, die vervolgens kunnen worden omgeleid naar uw webactiviteit waarmee het e-mailbericht wordt verzonden. Raadpleeg het artikel over Copy-activiteit uitvoereigenschappen voor meer informatie.