Hvad er observability?
Observability er evnen til ud fra et systems logs, måleværdier og sporinger at forstå hvorfor det opfører sig som det gør, ikke kun at noget er galt. Klassisk overvågning slår alarm ved kendte problemer; observability hjælper også med at opklare de ukendte. For kunden betyder det kortere nedbrud fordi fejlsøgningen begynder med svar i stedet for gæt.
Observability er et ord der er blevet stadig mere udbredt i takt med at systemer er blevet mere komplekse og bygget op af mange dele der arbejder sammen. Det handler om en enkel, men afgørende ting: at kunne se ind i sit eget system og forstå hvorfor det opfører sig som det gør. Her er hvad begrebet betyder, og hvorfor det er vigtigt for dig som kunde.
Definitionen
Observability er evnen til ud fra den information et system efterlader (logs, måleværdier og sporinger) at forstå hvorfor det opfører sig som det gør og ikke kun konstatere at noget er galt. Et system med god observability er gennemsigtigt: Når noget sker, kan man følge sporene og opklare årsagen.
Navnet kommer af at systemet er observerbart, altså muligt at se ind i. Jo mere og jo bedre information det giver om sin indre tilstand, desto lettere er det at forstå hvad der foregår. Det modsatte er en sort boks der virker indtil den ikke gør, og ingen kan sige hvorfor.
De tre signaltyper
Observability hviler på tre slags signaler, og de supplerer hinanden.
- Logs er detaljerede tekstnotater om hvad der er sket, hændelse for hændelse. Man kan se dem som systemets dagbog: en løbende række af “det her skete, på det her tidspunkt, i den her sammenhæng”.
- Metrics, altså måleværdier, er tal over tid: svartider, antal forespørgsler, andel fejl i minuttet. De viser tendenser og gør det tydeligt når noget afviger fra det normale.
- Traces, eller sporinger, følger en enkelt forespørgsel hele vejen gennem systemets forskellige dele. De viser hvor tiden blev brugt, og i hvilket trin det gik i stå, og det er uvurderligt når mange komponenter arbejder sammen.
Hver for sig giver de brudstykker af billedet. Tilsammen gør de systemet forståeligt.
Forskellen til klassisk overvågning
Her ligger en sondring der er let at overse, men vigtig at forstå. Traditionel overvågning svarer på spørgsmål man har stillet på forhånd. Man beslutter at der skal gå en alarm hvis en server holder op med at svare, eller hvis fejlraten passerer et vist niveau, og derefter holder systemet øje med netop de kendte grænser. Det fungerer fremragende til problemer man kan forudse.
Observability handler om noget mere: at kunne stille nye spørgsmål bagefter, om problemer ingen havde tænkt på i forvejen. Når en uventet fejl dukker op, noget der aldrig er sket før, er forudbestemte alarmer ikke nok. Så skal man kunne grave i logs, måleværdier og sporinger for at forstå hvad der faktisk skete. Kort sagt: Overvågning ser de kendte fejl, observability hjælper dig med at forstå de ukendte. De to udelukker ikke hinanden, men hører sammen.
Et konkret scenarie
Forestil dig at kunder pludselig begynder at klage over at en tjeneste er langsom selvom intet er helt nede. Der er ikke gået nogen alarm, for ingen server er holdt op med at svare. Alt ser ved første øjekast normalt ud.
Med god observability går fejlsøgningen alligevel i gang med det samme. Måleværdierne viser at svartiderne har sneget sig opad den seneste time. En sporing af en enkelt forespørgsel afslører at tiden bliver brugt i et kald til en ekstern tjeneste. Loggene bekræfter at netop den tjeneste svarer langsomt. Inden for få minutter ved teamet hvor problemet sidder, og kan handle. Uden observability var den samme undersøgelse begyndt med rene gæt, og nedbruddet var blevet langt længere.
Gevinsten for kunden: kortere nedbrud
Det scenarie er hele pointen. Når noget går galt, er den dyre tid ikke selve reparationen, men den tid det tager at forstå hvad der er sket. Et system der er svært at se ind i, tvinger teamet til at gætte sig frem, og hvert gæt koster minutter eller timer med nedetid.
God observability vender det om: Fejlsøgningen begynder med svar i stedet for spekulation, og tjenesten er hurtigere oppe igen. For en forretning hvor nedetid betyder tabt omsætning eller skadet tillid, er det en af de mest rentable egenskaber et system kan have. Hos Weapp bygger vi observability ind i de løsninger vi driver, netop fordi det billigste nedbrud er det der er hurtigst overstået. Vil I vide hvor godt I kan se ind i jeres systemer i dag, så kontakt os.
Ofte stillede spørgsmål
Hvad er observability, forklaret enkelt?
Det er evnen til at se ind i et system og forstå hvad der sker inde i det. I stedet for kun at vide at en tjeneste er nede, kan man følge sporene og finde ud af hvorfor: hvor det gik galt, i hvilket trin og for hvilke brugere. Observability handler om at systemet efterlader nok information til at gåden kan løses, også når fejlen er uventet.
Hvad er de tre signaltyper?
Logs er detaljerede tekstnotater om hvad der er sket, hændelse for hændelse, som en dagbog fra systemet. Metrics er måleværdier over tid, f.eks. svartider eller antal fejl i minuttet, som viser tendenser, og hvornår noget afviger. Traces, eller sporinger, følger en enkelt forespørgsel hele vejen gennem systemet og viser hvor tiden blev brugt. Tilsammen giver de tre et dækkende billede.
Hvad er forskellen på observability og overvågning?
Overvågning svarer på spørgsmål man har stillet på forhånd: Den slår alarm når en kendt værdi passerer en grænse, f.eks. at en server er holdt op med at svare. Observability handler om at kunne stille nye spørgsmål bagefter, om problemer ingen havde forudset. Overvågning ser de kendte fejl; observability hjælper dig med at forstå de ukendte. De supplerer hinanden, men det sidste er nødvendigt for at fejlsøge det uventede.
Hvorfor er observability værd at betale for?
Fordi det gør nedbruddene kortere. Når noget går i stykker, er det den tid man bruger på at forstå hvad der er sket, der er dyr. Med god observability begynder fejlsøgningen med svar i stedet for gæt, og tjenesten er hurtigere oppe igen. For en forretning der mister penge eller tillid for hvert minut med nedetid, er det ofte en af de mest rentable investeringer i et system.
Er observability noget jeg som kunde skal spørge efter?
Det er klogt at gøre det. Spørg hvordan leverandøren ser hvad der sker i systemet, og hvordan de fejlsøger når noget går galt. Et modent team beskriver logs, måleværdier og sporinger og kan vise hvordan de hurtigt indkredser et problem. Mangler det svar, risikerer hver hændelse at blive lang fordi fejlsøgningen så begynder i blinde i stedet for med fakta.