Monitoring, waarschuwingen en logging
Stel effectieve systemen voor monitoring, waarschuwingen en logging in om problemen te detecteren en de systeemgezondheid te bewaken.
Monitoring, waarschuwingen en logging is een gratis Basiskennis van systeemontwerp voor backendontwikkelaars-les op CoddyKit. Dit is les 3 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Basiskennis van systeemontwerp voor backendontwikkelaars. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Basiskennis van systeemontwerp voor backendontwikkelaars bevat in totaal 4 lessen.
Inleiding tot observeerbaarheid
Vraag je je weleens af hoe grote systemen 24/7 beschikbaar blijven? Dat komt door goede observeerbaarheid! In deze les behandelen we drie pijlers: monitoring, signalering en logboekregistratie.
Met deze werkwijzen kunnen we de interne toestand van een systeem begrijpen aan de hand van de externe uitvoer. Ze zijn cruciaal voor hoge beschikbaarheid en betrouwbaarheid.
Wat is monitoring?
Monitoring is het voortdurend verzamelen en analyseren van gegevens over de prestaties en gezondheid van je systeem.
- Het biedt realtime-inzicht in het gedrag van je toepassingen en infrastructuur.
- Je kunt het zien als de vitale functies van het systeem: ze laten zien of alles soepel werkt of dat er problemen ontstaan.
Belangrijke meetwaarden om te monitoren
Wat moet je monitoren? Belangrijke meetwaarden vallen in een paar categorieën:
- Systeemmeetwaarden: CPU-gebruik, geheugen, schijf-I/O en netwerkverkeer.
- Toepassingsmeetwaarden: aantal aanvragen, foutpercentages, latentie, actieve gebruikers en wachtrijgroottes.
Richt je op meetwaarden die prestatieknelpunten of mogelijke storingen aangeven.
Monitoringtools in vogelvlucht
Veel tools helpen bij het verzamelen en visualiseren van meetwaarden. Enkele populaire voorbeelden zijn:
- Prometheus: een opensourcesysteem dat meetwaarden van geconfigureerde doelen verzamelt.
- Grafana: dit wordt vaak gecombineerd met Prometheus en is een krachtige tool voor het maken van dashboards en het visualiseren van gegevens.
- Datadog/New Relic: commerciële oplossingen voor end-to-endmonitoring van infrastructuur, toepassingen en logboeken.
Signalering begrijpen
Waar monitoring laat zien wat er gebeurt, vertelt signalering je wanneer er iets misgaat en vaak ook wie dat moet weten.
- Een signaal is een melding die wordt geactiveerd wanneer een gemonitorde meetwaarde een vooraf bepaalde drempel overschrijdt of zich abnormaal gedraagt.
- Het helpt engineeringteams snel op problemen te reageren, zodat uitvaltijd en impact beperkt blijven.
Effectieve signaleringsstrategieën
Goed ontworpen signalen voorkomen "signaalmoeheid" (te veel niet-kritieke signalen).
- Drempelwaarden: "CPU-gebruik > 90% gedurende 5 minuten."
- Basiswaarden: geef een signaal als het verkeer aanzienlijk onder het gebruikelijke patroon daalt.
- Ernstniveaus: kritiek, waarschuwing, informatie. Verschillende problemen vereisen verschillende urgentieniveaus.
Streef naar signalen waarop je actie kunt ondernemen en die voldoende context bieden om met probleemoplossing te beginnen.
Signaleringskanalen en escalatie
Zodra een signaal is geactiveerd, moet het de juiste mensen bereiken. Veelgebruikte kanalen zijn:
- E-mail/sms: voor minder kritieke signalen of eerste meldingen.
- Slack/Teams: voor bewustwording en overleg binnen het hele team.
- PagerDuty/Opsgenie: voor kritieke signalen voor medewerkers met wachtdienst die onmiddellijke aandacht vereisen, vaak met escalatiebeleid.
Escalatie zorgt ervoor dat een signaal naar de volgende persoon wordt gestuurd als de eerste reagerende persoon het niet bevestigt.
De kracht van logboekregistratie
Logboekregistratie is het vastleggen van gebeurtenissen die binnen je systeem plaatsvinden. Deze gebeurtenissen kunnen van alles zijn, van gebruikersacties tot systeemfouten.
- Logboeken bieden gedetailleerde context voor foutopsporing en om te begrijpen wat er misging (of juist goed ging!).
- Ze vormen een soort historisch overzicht van het gedrag van je systeem.
Voorbeeld: INFO: User 'john.doe' logged in from IP 192.168.1.100
Gecentraliseerde logboeksystemen
Naarmate systemen groeien, wordt het essentieel om logboeken van veel servers te verzamelen. Gecentraliseerde logboekregistratie voegt logboeken uit alle onderdelen van je systeem samen op één plek.
- Zo kun je gebeurtenissen tussen services veel gemakkelijker zoeken, analyseren en met elkaar in verband brengen.
- Populaire stacks zijn de ELK-stack (Elasticsearch, Logstash, Kibana) en commerciële oplossingen zoals Splunk.
Korte controle
Een hoge beschikbaarheid waarborgen betekent dat je problemen proactief identificeert en aanpakt. Welke van de volgende opties is de MEEST effectieve proactieve maatregel om een mogelijk prestatieprobleem van een systeem te detecteren?
Samenvatting en volgende stappen
Je hebt geleerd dat Monitoring, Alerting en Logging (MAL) fundamenteel zijn voor het bouwen en onderhouden van zeer beschikbare en betrouwbare systemen.
- Monitoring biedt inzicht in de gezondheid van het systeem.
- Alerting stelt teams op de hoogte van kritieke problemen.
- Logging biedt gedetailleerde historische context voor foutopsporing.
Als je deze onderdelen beheerst, kun je problemen snel detecteren, diagnosticeren en oplossen, zodat je systemen soepel blijven werken!
Leer Basiskennis van systeemontwerp voor backendontwikkelaars met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Monitoring, waarschuwingen en logging” gratis?
Ja — de volledige tekst van “Monitoring, waarschuwingen en logging” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Basiskennis van systeemontwerp voor backendontwikkelaars wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Basiskennis van systeemontwerp voor backendontwikkelaars bevat in totaal 4 lessen.
Wat leer ik in “Monitoring, waarschuwingen en logging”?
Stel effectieve systemen voor monitoring, waarschuwingen en logging in om problemen te detecteren en de systeemgezondheid te bewaken. Je oefent met Basiskennis van systeemontwerp voor backendontwikkelaars door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Basiskennis van systeemontwerp voor backendontwikkelaars te beginnen?
Ervaring vooraf is niet nodig. Basiskennis van systeemontwerp voor backendontwikkelaars op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.
Hoe lang duurt de les “Monitoring, waarschuwingen en logging”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Basiskennis van systeemontwerp voor backendontwikkelaars?
Ja. Elke les over Basiskennis van systeemontwerp voor backendontwikkelaars bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Redundantie en failovermechanismen
- Planning voor disaster recovery
- Monitoring, waarschuwingen en logging
- Circuit breakers en graceful degradation