Azuren Logic Apps: YTJ – rajapintaesimerkki

Azuren Logic Apps on Microsoftin pilvipalvelun Azuren palvelu erilaisten integraatioiden tekemisen, työnkulkujen käynnistämisen ja liiketoimintaprosessien suorittamisen tarpeisiin. Millaisia mahdollisuuksia Logic Apps sitten tarjoaa ja millaista on kehittäminen sillä?

Kirjoitin aiemmin keväällä blogikirjoituksessani Hilman tarjouspyyntöjen datan hakemisesta portaalin rajapintapalvelua käyttäen, välineenä oli tällöin Microsoftin Power Platformiin kuuluva Power Automate. Tässä jatketaan hieman samalla teemalla, mutta hyödyntäen nyt Azuren palvelua ja tietolähteenä on YTJ:n avoimen datan rajapinta.

Työnkulku lähtee liikkeelle ajastetusti, kahdessa seuraavassa vaiheessa asetetaan rajapintakutsun tarvitsema päivämäärä – muuttuja ja sen jälkeen suoritetaan rajapintakutsu GET – metodilla. Kutsun lopputulos kirjoitetaan Azure Blob Storageen.

Azuren Logic Appsin luominen

Logic Appsin voi luoda hyvin nopeasti portaalin käyttöliittymästä käsin, tämän jälkeen tullaan hallintaportaaliin. Logic Apps kehitystä voi tehdä portaalin kautta taikka Visual Studiossa.

Tässä esimerkissä työ tehtiin selaimen avulla portaalissa. Valmis kehitetty Logic App voidaan luoda toiseen ympäristöön helposti käyttäen esimerkiksi Powershelliä ja Azure Resource Manager – templaattia.

Työnkulun luominen

Työnkulun käynnistystapahtumaksi valittiin ajastettu tapahtuma, tässä esimerkissä frekvenssi oli päivän välein aamuyöllä tapahtuva käynnistyminen.

Seuraavina vaiheina on uuden muuttujan companyRegistrationFrom luominen ja sille arvon asettaminen. Ideana on se, että YTJ:n rajapinnasta haetaan edellisenä päivänä rekisteröidyt yhtiöt.

YTJ:n rajapintaa käytetään GET – metodin avulla, tässä käytetään vain kahta parametria eli tulosjoukon kokoa sekä rekisteröintipäivämäärää. Rekisteröintipäivämäärä tulee kyselyyn aiemmassa vaiheessa määritellyn muuttujan kautta.

Rajapinnan vaste luetaan JSON muotoon ja sieltä poimitaan jokaisen ytunnuksen tiedot erillisinä ja kirjoitetaan Azuren Blob Storageen.

Logic Apps osana integraatioarkkitehtuuria

Tässä esimerkissä Logic Appsin työnkulku toimii erillisenä prosessina, sillä ei ole Azure Blob Storagen lisäksi mitään muita yhteyksiä muihin palveluihin. Laajemmassa yhteydessä Logic Appsin työnkulun käynnistyminen tapahtuisi jostain muusta sovelluksesta, esimerkikkinä API Gatewayn kautta käynnistetty ja webhookin vastaanottamasta sanomasta käynnistyvä prosessi.

Logic Apps vs Power Automate

Kehittäjälle käyttöliittymä näissä kahdessa palvelussa on hyvin samanlainen, mikä sitten on keskeinen erotteleva tekijä? Azuren Logic Appsin käytön myötä on mahdollista hyödyntää Azuren palveluita lisäämään tietoturvaa ja prosessien suorituksen valvontaa.

Lisäksi puhdas käyttöperusteinen hinnoittelu on selkeämpi kuin Power Platformin lisensointimalli. Kai asia on ajateltava niin että “Citizen Developer” käyttää Power Platformia ja edistyneempi käyttäjä enemmän Logic Appsin tarjoamia mahdollisuuksia. Logic Apps tarjoaa myös enemmän välineitä yrityksen sovellusintegraatioihin sekä organisaatioiden välisiin integraatiohin.

Logic Apps ja Azure data platform palvelut

Logic Appsin avulla voisi helposti toteuttaa erilaisia työnkulkuja, joissa ulkoisista lähteistä ladataan dataa Azureen ja seuraavassa vaiheessa Azure Data Factory lataa tiedot vaikkapa tietokantapalveluun Power BI – raporttien tietolähteeksi. Tällä tavalla Azuren data-alustapalvelut voivat hyödyntää Logic Apps työnkulkujen lataamaa dataa.

Tutustu myös Ready Solutions Oy:n data engineering – palveluihin, meillä on erittäin vahvaa osaamista Azuren data-alustapalveluista.

Kirjoittajasta

Asko Kauppinen on Ready Solutions Oy:n konsultti ja osakas, jolla on vuosien kokemus erilaisista data-alustoista aina integraatioista analytiikan hyödyntämiseen asti.

Kirjoittaja Asko Kauppinen

asko.kauppinen@readysolutions.fi

+358451374850