Wat is monitoring?
Met (applicatie)monitoring worden (kritische) aspecten van een systeem constant in de gaten gehouden. Denk aan: of je applicatie nog in de lucht is of hoeveel bestellingen er het laatste uur zijn geplaatst. Maar ook: of er foutmeldingen in de code zijn of afwijkingen in de algehele performance.
Vaak krijgt een verantwoordelijke direct een melding als er afwijkingen worden gedetecteerd. Bij kritische zaken kan ook een storingsdienst worden geïnformeerd.
Meer dan alleen up- en downtime monitoren
Voordat je je monitoring inregelt, bepaal je wat je in de gaten wil houden. Naast up- en downtime is dat bijvoorbeeld:
- Reactietijd van de applicatie
- Aantal kritische transacties
- CPU/geheugengebruik
- Aantal foutmeldingen
- Databasegebruik
- Portmonitoring
Maak je nooit afhankelijk van één enkele monitor. Gezien de complexiteit van een moderne applicatie kan je frontend doodleuk aangeven in de lucht te zijn, maar heeft je API wél problemen en zien je bezoekers dus enkel foutmeldingen.
Hoe pakken wij monitoring aan?
Om te beginnen richten wij altijd een aantal standaardmonitors in via een externe dienst zoals UptimeRobot. Hiermee wordt vanaf meerdere externe locaties elke minuut de verbinding naar je applicatie of platform gecontroleerd. Valt die weg of gaat het te langzaam? Dan krijgen wij direct een signaal.
Heb je meerdere omgevingen, zoals een losse front- en backend? Dan regelen we minstens één monitor per omgeving in. Daarnaast installeren we software op de server die het CPU/geheugengebruik in de gaten houdt.
Heb je te maken met kritische flows en/of transacties? Dan kunnen we applicatiespecifieke monitors inrichten. Het bepalen van de te controleren aantallen en tijdstippen is altijd maatwerk. Ditzelfde geldt voor het detecteren van foutmeldingen in de code.
Uiteraard houden we altijd rekening met de onderhoudsmomenten van je applicatie of platform. Je wil immers geen ‘alarmbellen’ horen af gaan als er niks aan de hand is.
Het belang van evaluatie van je monitoring
Wat nog weleens vergeten wordt, is tussentijdse evaluatie. Zijn de huidige monitors nog afdoende? Kloppen de aantallen nog of moet er iets aangescherpt worden?
Als een applicatie of platform groeit, kunnen bijvoorbeeld ook je transacties en CPU/geheugengebruik groeien. Verandert een monitor dan niet mee? Dan bestaat de kans dat je te laat achter afwijkingen komt. Iets dat je natuurlijk voor wil zijn.
Daarnaast is het ook belangrijk om bepaalde trends te kunnen constateren. Vindt er een storing plaats? Dan houden we die bij in een log en beschrijven we de oorzaak zodra die gevonden is. Hierdoor zie je ‘vanzelf’ of er iets structureels aan de hand is en actie vereist is.
Op tijd bijsturen
Adequate monitoring zorgt ervoor dat je op tijd kan bijsturen als er iets fout gaat, waarmee je veel grotere schade weet te voorkomen. Wil je meer over monitoring voor stabiele applicaties en platformen weten? Neem dan gerust eens contact met ons op.
Auteur: Sander Duivenvoorden