De 5 elementen van Application Performance Monitoring

Application Performance Monitoring is de paraplu waaronder je alle initiatieven kunt scharen die nodig zijn om grip te krijgen op je applicatieve landschap. Het juist inrichten van alle facetten onder deze paraplu is van groot belang om deze grip te houden in een wereld waarin wijzigingen in het IT landschap schering en inslag zijn.

Gartner heeft een model ontwikkeld met 5 dimensies om je applicatieve performance onder controle te houden. Deze dimensies zijn End User Experience, Runtime Application Architecture, Business Transactions, Deep Dive Component Monitoring en Analytics / Reporting. In deze blogpost zal ik alle dimensies toelichten.

gartner apm model

End User Experience

De beste manier om grip te krijgen op de status van je applicatie landschap is door deze te bewaken vanuit het oogpunt van de eindgebruiker. De eindgebruikerservaring meten geeft je het beste beeld maar zorgt er ook voor dat je snel kunt inspelen op verstoringen en een goede inschatting kunt maken van de impact van een verstoring. Om de eindgebruikerservaring te meten zijn er grofweg 2 meetmethoden.

De eerste is agentless monitoring. Deze manier van monitoring maakt gebruik van het netwerk verkeer wat door de loadbalancers en switches gaat. Dit verkeer wordt afgetapt en door data probes geanalyseerd. Hiermee verkrijg je informatie over de performance van transacties door de gehele infrastructuur en daarnaast kom je ook meer te weten over de desbetreffende klant; locatie, browser, operating system, etc. De voordelen van deze manier van meten is dat je snel data kunt presenteren omdat je geen complexe scripts hoeft te bouwen. Daarnaast krijg je veel informatie over de klanten die de applicaties gebruiken. Er zitten echter ook nadelen aan deze manier van meten. Ten eerste mis je informatie over de performance vanaf de eindgebruiker tot het IT landschap. Dit is niet opgenomen in de monitoring. Ten tweede zal je niet kunnen monitoren als er; A geen gebruikers zijn en B als de infrastructuur vlak voor de tap van het netwerkverkeer stuk is.

De tweede manier van meten is synthetic monitoring. Hierbij zet je probes / robots in om scripts uit te voeren die een eindgebruiker simuleren. Vaak worden 3 tot 5 meetrobots ingezet om meerdere gebruikers te simuleren zodat je een constante stroom van monitoring hebt en snel in kunt springen op mogelijke verstoringen, ook als er geen echte gebruikers zijn. De voordelen van deze manier van monitoring is dat je altijd data hebt en dat je vast patroon afspeelt op de applicatie zodat je in de resultaten geen invloeden van buiten hebt. Problemen in de applicatie kunnen voor opening al gedetecteerd worden. Daarnaast lenen deze manier van monitoring zich ook voor het bewaken van SLA’s die aan een applicatie gesteld worden.

Deze manier van monitoring kun je niet uitsluiten. Zonder deze manier kun je niets zeggen over de ervaring van de eindgebruiker en ga je verkeerde conclusies trekken.

Runtime Application Architecture

Om verstoringen te voorkomen of om verstoringen sneller op te lossen is het cruciaal dat de organisatie begrijpt hoe de IT infrastructuur in elkaar steekt.

Verstoringen kun je voorkomen door vooraf een goede impact bepaling te kunnen doen van wijzigingen die uitgevoerd worden op de IT infrastructuur. Als je niet goed weet welke componenten waar staan en welke componenten met elkaar communiceren kunnen wijzigingen een kettingreactie veroorzaken die een grote verstoring voor de eindgebruiker kunnen geven.

Verstoringen kun je sneller oplossen als je een signaal van de monitoring kunt koppelen aan de onderliggende IT infrastructuur.

In deze fase van het Gartner APM model moet je zorgen dat je altijd over de juiste kennis kunt beschikken; welke IT infrastructuur heb ik en welke componenten praten met elkaar. Daarnaast dien je ten allen tijde het change proces te controleren; welke changes worden er op dit moment uitgevoerd en welke komende changes zouden elkaar kunnen verstoren?

Tools die de IT infrastructuur op gezette tijden scannen zorgen dat je altijd over up2date informatie beschikt die automatisch bijgewerkt wordt. Dit voorkomt menselijke fouten.

Business Transactions

Eigenlijk is dit al kort voorbij gekomen in de 1e fase van het model; End User Monitoring. De zaken die bewaakt worden door agentless of synthetic monitors bestaan vaak uit simpele url’s of database calls. Deze simpele handelingen zijn altijd terug te vertalen naar handelingen die door de gebruiker uitgevoerd worden. Deze handelingen worden ook wel Business Transactions genoemd. In SLA afspraken die tussen de business en IT worden gemaakt wordt vaak gesproken over de performance en beschikbaarheid en deze worden bepaald per business transaction.

Synthetic monitors zijn het beste in staat om hier data voor te leveren. Dit omdat het vast gedefinieerde handelingen zijn die volgens een vast schema uitgevoerd worden.

Deep Dive Component Monitoring

Als we iets kunnen zeggen over de ervaring van de eindgebruiker moeten we in staat zijn om verstoringen in de IT infrastructuur zo snel mogelijk te detecteren en dus op te lossen. Dit zodat we de ervaring voor de eindgebruiker niet verstoren en indien dit toch het geval is dat we de impact zo laag mogelijk kunnen houden.

Component Monitoring is bewaking van alle componenten in de IT infrastructuur. Dit gaat om netwerkcomponenten, servers, OS, middleware en applicatie componenten. Monitoring van deze componenten kan agentless door periodiek in te prikken op de verschillende componenten maar kan ook met een agent. Agentless heeft als voordeel dat de impact op de componenten laag is omdat er bijna geen resources op de componenten aangesproken worden. Een agent echter heeft meer mogelijkheden op de componenten. Agents worden vaak specifiek gebouwd voor bepaalde componenten om het maximale resultaat te bereiken. Daarnaast zie je vaak dat agents meer rechten hebben op de componenten dan agentless monitoringtools.

Behaal optimaal resultaat, indien mogelijk, door component monitoring te koppelen aan de geïnventariseerde IT infrastructuur en zorg dat dit gecombineerd wordt met de juiste End User Monitoring.

Analytics / Reporting

Bovenstaande tools genereren een enorme hoeveelheid data, big data. Deze data vertalen naar informatie is van essentieel belang om waarde uit de investering te halen. Ja we kunnen verstoringen beter aan zien komen maar wat zijn de trends? Wanneer treden verstoringen op, wat is de capaciteit van de IT infrastructuur, welke wijzigingen zie ik aankomen en kan dat allemaal wel?

Het verbeteren van de eindgebruikerservaring is een continue proces. De IT organisatie bevat een schat informatie die de business kan gebruiken om de dienstverlening te verbeteren. Helaas blijft dit vaak achterwege.

Conclusie

Ik hoop dat bovenstaande model en de bijbehorende uitleg een goede aanzet geeft als je als CIO een goede monitoring strategie moet ontwikkelen. In mijn 10 jarige loopbaan heb ik veel tools zien komen en gaan, ook nu zijn er weer volop ontwikkelingen zoals de cloud. Echter bovenstaand model is altijd van toepassing gebleven. Nieuwe tools maken een APM implementatie stukken eenvoudiger en goedkoper maar de essentie zal niet veranderen.

Mocht je nog vragen hebben nav het lezen van dit artikel voel je dan vrij om hem hieronder te stellen. Uiteraard mag je dat ook via Twitter of andere sociale media doen.

Over Coen Meerbeek

Splunk consultant @ Blue Factory, eigenaar en oprichter @ BuzzardLabs, basketbalspeler en Xbox-gamer. Lees meer van Coen op Launchers.nl en Twitter.

Laat wat van je horen

*