Monitoring, logovanie a observability

Séria: Ako písať dokumentáciu a manuály v IT projekte

 

Reálny problém z praxe

Support hlási:

„Používateľ tvrdí, že objednávka neprešla.“

Tester skúsi scenár.
Objednávka prejde.

Vývojár sa pýta:

„Máme k tomu logy?“

Nikto nevie.

V systéme nie je jasné:

  • čo sa loguje
  • kde sa to loguje
  • ako sa to dohľadá

Výsledok:

problém sa nedá overiť
a končí ako „nedá sa reprodukovať“

 

Čo sa tu vlastne pokazilo (analýza systému)

Problém nie je v chybe.
Problém je, že systém nie je pozorovateľný.

Chýba:

  • monitoring
  • logovanie
  • prehľad o správaní systému

Systém síce funguje,
ale nikto nevie povedať, čo sa v ňom deje.

 

Skutočné náklady (čas, chaos, riziko)

Keď nie je observability:

  • incidenty sa riešia naslepo
  • chyby sa nedajú dohľadať
  • tester nevie overiť scenár
  • support nevie komunikovať so zákazníkom

Typická situácia:

problém existoval
ale nezostal po ňom žiadny dôkaz

 

Minimálny model riešenia

Netreba komplexný monitoring.
Treba základnú viditeľnosť.

1. Logovanie

Musí byť jasné:

  • čo sa loguje
  • kde sa logy nachádzajú
  • ako sa vyhľadávajú

Minimálne:

  • requesty
  • chyby
  • zmeny stavu

 

2. Kontext v logoch

Log bez kontextu je nepoužiteľný.

Každý log by mal obsahovať:

  • identifikátor požiadavky
  • používateľa alebo entitu
  • čas
  • typ operácie

 

3. Monitoring

  • dostupnosť systému
  • chybovosť
  • výkon

Nemusí byť detailný.
Musí ukázať, že sa niečo deje.

 

4. Alerty

  • čo sa považuje za problém
  • kto dostane upozornenie
  • ako rýchlo

 

5. Prepojenie na incident

  • ako sa problém dohľadá
  • ktoré logy sa kontrolujú
  • čo sa má overiť

 

Príklad

Bez logovania:

„Objednávka neprešla.“

S logovaním:

  • request prišiel
  • validácia prebehla
  • externá služba vrátila chybu
  • systém vrátil stav 500

Zrazu je jasné:

čo sa stalo
kde vznikol problém
čo riešiť

 

Mini checklist

Je jasné, čo sa loguje?
Je jasné, kde logy nájsť?
Obsahujú logy kontext?
Existuje základný monitoring?
Sú definované alerty?

Ak nie, systém nie je pozorovateľný.

 

Prepojenie na kvalitu a workflow

Observability nie je len technická vec.

Je to základ pre:

  • testovanie
  • debugging
  • support
  • prevádzku

Pre testera je to kritické:

Bez logov nevieš:

  • potvrdiť chybu
  • analyzovať problém
  • overiť správanie systému

Testovanie bez observability je len hádanie.

 

Krátke zhrnutie

Systém nestačí spustiť.

Treba vedieť:

čo robí
kedy robí chybu
prečo robí chybu

Ak nemáš monitoring a logovanie:

  • problémy sa riešia naslepo

Ak ich máš:

  • systém je čitateľný
  • problémy sú riešiteľné

A to je základ stabilnej prevádzky.

Pridajte Komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Návrat hore