Mitä tarkoittaa sovellusten suorituskyvyn mittaaminen Azuressa?
Azuresta tehokkaat työkalut erilaisten työkuomien tarpeisiin
Ohjelmistosovellusten suorituskyvyn seuraaminen ja optimointi on kriittistä niiden toiminnan kannalta, myöskin pilviympäristöissä kuten Microsoftin Azure. Microsoft Azure pilvipalveluna tarjoaa laajan valikoiman työkaluja ja palveluita, joilla voidaan kerätä ja analysoida sovellusten tuottamaa loki- ja telemetriadataa. Tässä kirjoituksessa tarkastellaan erilaisia vaihtoehtoja ja niiden hyödyntämistä sovellusten suorituskyvyn seurannassa ja jatkuvassa parantamisessa.
Mahdolliset suorituskyvyn seurannan teknologiat
Azure Monitor
Azure Monitor on Azuren kattava työkalu, joka mahdollistaa sovellusten, infrastruktuurin ja verkon suorituskyvyn seurannan. Se tarjoaa kattavat ominaisuudet lokien ja telemetriadatan keräämiseen ja analysointiin.
Loki- ja telemetriadata viittaa kaikkiin tietoihin, joita kerätään sovelluksen toiminnasta ja suorituskyvystä. Näitä tietoja käytetään useimmiten analysoimaan ja seuraamaan sovelluksen toimintaa reaaliajassa tai jälkikäteen.
Azure Log Analytics Workspace
Azure Log Analytics on Azure Monitorin keskeinen komponentti, joka kerää ja analysoi loki - sekä telemetriatietoa eri lähteistä. Voit käyttää Log Analyticsia yhdistämään ja analysoimaan dataa useista palveluista ja sovelluksista, mikä auttaa tunnistamaan suorituskykyongelmia ja seuraamaan eri sovellusten komponenttien / resurssien käyttöä.
Log Analytics hyödyntää Kusto Query Language (KQL) -kieltä tehokkaaseen ja nopeaan datan analysointiin. KQL:n avulla voit suorittaa monimutkaisia kyselyitä ja visualisoida dataa helposti ymmärrettävällä tavalla. Tämä tekee siitä erinomaisen työkalun syvälliseen analyysiin ja suorituskykyongelmien juurisyiden selvittämiseen, yhdistettynä vaikkapa BI – työkaluun kuten Power BI.
Azure Log Analyticsin hinnoittelu perustuu kerätyn ja käsitellyn datan määrään. Hinnoittelumalli on suunniteltu joustavaksi, jotta se vastaa erilaisten organisaatioiden tarpeisiin. Log Analyticsin kustannukset muodostuvat pääasiassa seuraavista komponenteista:
- Datan keräys: Hinnoittelu perustuu kerätyn datan määrään (GB). Mitä enemmän dataa kerätään, sitä korkeammat ovat kustannukset.
- Datan säilytys: Kerätyn datan säilytyksestä veloitetaan erikseen. Voit valita, kuinka pitkään dataa säilytetään, ja kustannukset määräytyvät säilytysajan ja datan määrän perusteella.
- Kyselyt ja analyysit: Hinnoittelu sisältää myös kustannukset, jotka liittyvät datan kyselyihin ja analysointiin. Tämä kattaa Kusto Query Language (KQL) -kyselyiden suorittamisen ja datan visualisoinnin.
Application Insights
Application Insights on erityisesti erilaisten web – ja rajapintasovellusten suorituskyvyn ja käytettävyyden seurantaan suunniteltu palvelu. Se kerää telemetriatietoa, kuten pyyntöjen vastaukset, virheet ja käyttäjäpolut, ja tarjoaa reaaliaikaista analysointia ja hälytystoimintoja. Application Insights integroituu saumattomasti useisiin kehitysympäristöihin ja tukee useita ohjelmointikieliä.
Azure Diagnostics
Diagnostics on Azuressa resurssikohtainen konfiguraatio joka määrittää käytännössä mitä dataa kerätään ja minne tämä kerätty data lähetetään. Resurssikohtainen konfiguraatio mahdollistaa hyvin syvällisen diagnostiikkadatan keräämisen.
Tyypillisiä kerättäviä tietoja ovat metriikat sekä lokitiedot, kohteena voi olla Azure Log Analytics Workspace, Azure Storage, Azure Event Hub taikka joku kolmannen osapuolen tuote (Datadog, New Relic tms.) joka on suunniteltu vastaanottamaan ja käsittelemään tällaista dataa.
Seurannan ja resurssien organisointi Azuressa
Tyypillisesti määritellään ensiksi seurannan taso sekä kerättävät tiedot, nämä kerätään määriteltyyn sijaintiin resurssikohtaisesti. Kuitenkin on hyvä muistaa että yksittäinen sovellus / sovelluksen ympäristö koostuu useasta eri resurssista, tällöin tarvitaan työkaluja joilla voidaan raportoida tilanne sovelluskokonaisuuden näkökulmasta eikä seurata pelkästään sen sovelluksen yksittäisten komponenttien suorituskykyä.
Useimmiten sovellukset Azuressa ovat Landing Zone – alueella, tällöin sovelluksen ympäristöt ovat omia resurssiryhmiään ja sisältävät kunkin ympäristön komponentit, ml. Azure Log Analytics – työtilat. Sovellusympäristökohtaiset työtilat mahdollistavat hienojakoisen tavan käsitellä dataa ja toisaalta Monitor – palvelusta voidaan kuitenkin nähdä tilannekuva yli kaikkien näiden työtilojen.
Yhteenveto
Azuressa on tarjolla monipuoliset työkalut ja palvelut sovellusten suorituskyvyn seuraamiseen ja optimoimiseen. Loki- ja telemetriadatalla on keskeinen rooli suorituskykyongelmien tunnistamisessa ja ratkaisemisessa. Käyttämällä Azure Monitoria, Azure Log Analyticsia, Application Insightsia ja muita Azuren työkaluja, voit varmistaa sovellustesi optimaalisen toiminnan ja tarjota käyttäjille parhaan mahdollisen kokemuksen ratkaisemalla ongelmat jo ennen niiden syntymistä.
Yhteenvetona voidaan todeta, että sovellusten suorituskyvyn mittaaminen ja optimointi on jatkuva prosessi, joka vaatii tehokkaita työkaluja ja tarkkaa seurantaa, erityisesti pilvipalveluiden tapauksessa. Azure tarjoaa sovelluskehitykseen alustan, jonka työkalut myös auttavat kehittäjiä ja IT-ammattilaisia ylläpitämään sovellustensa korkeaa suorituskykyä ja luotettavuutta.
Jos teillä on selkeitä tarpeita Azuren pilvipalveluiden hyödyntämiseen ja haluaisitte edetä asiassa niin tarjoamaamme kuuluva työpaja määrittää sovellusten suorituskyvyn seurantaan liittyvät periaatteet.