Pratite uslugu i njene korisnike
ZavršenoPovežite metrike, zapisnike i tragove s ciljevima usluge. Osmislite upozorenja, granice podataka i provjere telemetrije koja nedostaje.
Objavljuje TaigaKako pišemo
Provjerite razumijevanjeVrijeme izvoza raste. Uzorkovani tragovi pokazuju spore spanove baze podataka. Šta možete zaključiti?Uradite vježbu
Šta ćete naučiti
- Odaberite telemetriju koja odgovara na konkretno operativno pitanje.
- Razlikujte simptom usluge od unutrašnjeg uzroka.
- Zaštitite telemetriju i otkrijte dokaze koji nedostaju ili su zastarjeli.
Počnite pitanjem
Nadzor provjerava poznate uslove. Opservabilnost pomaže istražiti ponašanje sistema, uključujući neuspjehe koje niste predvidjeli. Više kontrolnih ploča ne daje automatski bolje odgovore.
Za izmišljenu uslugu izvoza počnite korisničkim pitanjem: može li ovlašteni korisnik dobiti tačan izvoz unutar dogovorenog vremena? Zatim odaberite signale koji podržavaju to pitanje i pomažu objasniti neuspjehe.
OpenTelemetry pruža instrumentaciju i standarde za telemetriju. Može slati signale kompatibilnim backend sistemima. I dalje trebate pohranu, upite, kontrole pristupa, pravila čuvanja i ljude koji djeluju na osnovu dokaza. Uvod u opservabilnost.
Povežite različite oblike dokaza
Metrika mjeri veličinu tokom vremena. Zapisnik bilježi događaj. Trag povezuje srodne operacije dok zahtjev prolazi kroz sistem. Span predstavlja jednu operaciju unutar traga.
| Operativno pitanje | Primjer dokaza | Ograničenje koje treba zapamtiti |
|---|---|---|
| Koliko izvoza koji ispunjavaju uslove ne uspijeva? | Broj neuspjeha i broj zahtjeva koji ispunjavaju uslove | Pogrešan nazivnik daje obmanjujuću stopu |
| Šta se desilo s jednim izvozom? | Strukturirani zapis s ID-jem zadatka, ishodom i verzijom | Događaji koji nedostaju ostavljaju praznine |
| Gdje je potrošeno vrijeme? | Trag kroz API, red čekanja, radni proces i bazu podataka | Uzorkovanje i neispravan prijenos konteksta mogu sakriti rad |
| Šta se promijenilo prije simptoma? | Zapisi raspoređivanja i konfiguracije | Sam vremenski slijed ne potvrđuje uzrok |
Za asinhroni rad sačuvajte sigurnu vezu između predatog zadatka i izvršavanja radnog procesa. Odgovor HTTP 202 može značiti da je rad prihvaćen. Ne dokazuje da je izvoz završen.
Upozorite kada je potrebna radnja
Odredite SLI i njegov nazivnik prije postavljanja SLO-a. U primjeru brojite izvoze koji ispunjavaju uslove i ispravno su završeni unutar dogovorenog trajanja. Odredite kako dugotrajni i napušteni zadaci ulaze u mjerenje.
Budžet grešaka opisuje dozvoljene neuspjehe unutar SLO perioda. Stopa potrošnje opisuje koliko brzo neuspjesi troše taj budžet. Googleove smjernice koriste više vremenskih prozora da uravnoteže pravovremeno otkrivanje i previše upozorenja. Upozoravanje prema SLO-ovima.
Pozovite dežurnu osobu kada uslov zahtijeva pravovremenu radnju. Manje hitan rad pošaljite u red. Svako upozorenje treba odgovornu osobu, opis utjecaja, vezu za istragu i instrukciju za odgovor. Pregledajte upozorenja koja ponavljano ne dovode ni do kakve radnje.
Nemojte koristiti jedan opći prag za svaku uslugu. Utjecaj na korisnike, saobraćaj, poslovno radno vrijeme i kapacitet odgovora utječu na odluku.
Zaštitite telemetrijski pipeline
Telemetrija može sadržavati lične podatke, tokene, parametre zahtjeva i povjerljive dokumente. Odredite dozvoljena polja prije prikupljanja. Ograničite pristup i čuvanje. Uklonite tajne prije slanja vanjskom backend sistemu. Osjetljiva telemetrija.
Nemojte koristiti email klijenta ili jedinstveni ID zadatka kao oznaku metrike. Neograničene oznake povećavaju broj vremenskih serija i mogu izložiti identifikatore. Koristite kontrolisane atribute grupisanja za metrike. Odobrene identifikatore za povezivanje stavite u zapisnike ili tragove s kontrolisanim pristupom.
Mjerite i sam pipeline. Provjerite neuspjehe prijema, odbačene podatke i starost najnovijeg zapažanja. Ravan grafikon grešaka može značiti da nema grešaka ili da nema dolazne telemetrije. Prikažite tu razliku.
Istražite konkretan neuspjeh
Izmišljena usluga vraća HTTP 202 za svaki zahtjev. Vrijeme čekanja u njenom redu raste sa sekundi na 15 minuta. Zapisnici radnog procesa pokazuju ponovljena prekoračenja vremena baze podataka. Uzorkovani tragovi pokazuju da radni proces većinu vremena provodi u pozivima baze podataka.
Ovi dokazi podržavaju usmjerenu istragu. Ne potvrđuju je li uzrok promjena upita, iscrpljene konekcije ili kapacitet baze podataka. Uporedite ove hipoteze s metodom otklanjanja grešaka.
Taiga Monitoring pruža pregled stanja proizvoda sa signalima dostupnosti i iskustva u pregledniku. Dopunjava opservabilnost infrastrukture i aplikacije; ne zamjenjuje te sisteme. Monitoring.
Uradite vježbu
Za izmišljeni izvoz iz ove lekcije odredite jedan SLI, jedno upozorenje koje zahtijeva radnju, tri dozvoljena telemetrijska polja i dva zabranjena polja. Navedite kako biste otkrili neispravan telemetrijski pipeline.
Preuzmite radni list (Markdown)Isključivanjem ove opcije briše se sav napredak sačuvan u ovom pregledniku.
Napredak ostaje u ovom pregledniku. Bez računa i praćenja.
Izvori i dodatno čitanje
- OpenTelemetry: Observability primer ↗
- OpenTelemetry: Handling sensitive data ↗
- Google SRE: Alerting on SLOs ↗
- Taiga docs: Monitoring ↗