Cloud-Integration

Enterprise Application Integration mit Microsoft Azure Logic Apps

Logic App Templates

Beim Erstellen einer Logic App kann aus einer Liste von Vorlagen ausgewählt werden. Zwei dieser Templates werden in diesem Abschnitt vorgestellt. Der erste Anwendungsfall befasst sich mit dem Backup von Dateien auf einem FTP Server ins Blob Storage der Azure Cloud, der zweite zeigt eine Implementierung für Content-Based Routing.

Vorlage FTP Backup to Azure Blob Storage
Vorlage FTP Backup to Azure Blob Storage

Die Vorlage "FTP Backup to Blob Storage" (siehe Abbildung) erstellt eine Logic App, die Dateien von einem FTP-Server in regelmäßigen Zeitintervallen lädt und im Azure Blob Storage ablegt. Diese Speicherlösung von Microsoft Azure kann Daten als Blobs (Binary Large Objects), also als Dateien speichern. Die zugehörige Vorlage besteht aus vier einzelnen Actions, die sequenziell ausgeführt werden: Action 1 startet die Logic App nach einem vom Entwickler definierten Intervall. Action 2 ist dafür zuständig, auf den FTP-Server zu verbinden und die Liste der Dateien abzufragen. Die geladene Liste wird von Action 2 an Action 3 weitergegeben, die die Dateien einzeln per FTP-Protokoll vom Server bezieht. Action 4 schließlich speichert die von Action 3 geladene Datei im Azure Blob Storage ab.

Vorlage Content-Based Routing
Vorlage Content-Based Routing

Die Vorlage "Content-Based Routing" (siehe Abbildung) löst ein typisches Integrationsszenario: die Weiterleitung eines XML-Dokuments an verschiedene Empfänger. Welcher Adressat das jeweilige Dokument bekommt, wird automatisch anhand des Inhalts entschieden. Die erste Action bezieht via Polling von einem FTP-Server Dateien im XML-Format. Die jeweils empfangene Datei wird ausgelesen und deren Inhalt an die BizTalk XML Validator Action weitergereicht. Diese prüft den Inhalt auf XML-Konformität und validiert diesen gegebenenfalls gegen ein XML-Schema.

Dann kommt der BizTalk Xpath Extractor zum Zug, der anhand eines XPath-Statements einen Knoten aus dem XML-Dokument ausliest. Anhand des Inhalts dieses Knotens wird der passende Empfänger ermittelt. Falls die konfigurierte Bedingung zutrifft, wird die Datei vom BizTalk Transform Service transformiert und über den Microsoft SQL Connector in eine SQL Server Datenbank gespeichert. Trifft die Bedingung nicht zu, wird das XML-Dokument über den Azure Blob Storage Connector lediglich im Azure Blob Storage abgespeichert.