Monitoring best practices for DevOps teams
Strategier og værktøjer til effektiv monitoring af moderne cloud-native applikationer.
Effektiv monitoring er en af de vigtigste DevOps-praksisser. Uden indsigt i, hvad der sker i dine systemer, er du blind. Moderne monitoring omfatter tre søjler: metrics (kvantitative målinger), logs (diskrete hændelser) og traces (anmodningers vej gennem systemet). Tilsammen giver de observability.
Metrics er tidsserier af numeriske værdier: CPU-forbrug, request latency, fejlrater, queue-dybde. Prometheus er de facto-standarden for metrics-indsamling i cloud-native miljøer. Det scraper metrics fra services via HTTP og gemmer dem i en tidsseriedatabase. Grafana visualiserer metrics i dashboards og muliggør alarmer.
Logs fanger diskrete hændelser med kontekst. Struktureret logging (JSON-format) gør logs søgbare og analyserbare. ELK-stakken (Elasticsearch, Logstash, Kibana) og Loki (fra Grafana) er populære log-management-løsninger. Centraliser altid logs fra alle services ét sted.
Distribueret tracing følger en anmodning på tværs af services i et mikroservice-arkitektur. OpenTelemetry er standarden for instrumentering, og backends som Jaeger og Tempo visualiserer traces som vandfald-diagrammer. Traces er uvurderlige for at finde flaskehalse og fejl i komplekse systemer.
Alerting bør baseres på symptomer, ikke årsager. Alert på "5xx-fejlrate over 1%" frem for "CPU over 90%". Brug severity-niveauer: critical (vækker folk), warning (undersøg snart), info (til dashboards). Undgå alert fatigue ved at holde antallet af aktive alerts lavt og kun alerte på handlingskrævende tilstande. On-call-rotation fordeler ansvaret og forhindrer burnout.