Většina .NET aplikací dnes generuje logy. A často jich není málo.
Přesto když se objeví problém v produkci, první reakce bývá stejná: „Nemáme dost informací.“
To není nutně problém množství dat. Často jde spíš o to, jak jsou data strukturovaná a jestli vůbec odpovídají otázkám, které si v daný moment klademe.
Logy samy o sobě nestačí
Logování je základ. Samo o sobě ale nestačí k tomu, abychom pochopili, co se v systému skutečně děje.
Chybí kontext.
Co přesně se stalo napříč službami?
Která část systému byla bottleneck?
Jak konkrétní request ovlivnil další komponenty?
Bez toho se z logů stává spíš rušivý šum než skutečná odpověď.
Observability je o otázkách, ne o datech
Rozdíl mezi monitoringem a observability není jen v nástrojích, ale především v tom, jak nad systémem přemýšlíme.
Nejde jen o to sbírat data, ale o to být schopni se systému „zeptat“ na věci, které jsme dopředu neznali.
Proč tenhle request selhal?
Kde vznikla latence?
Co se změnilo oproti včerejšku?
A dostat na tyto otázky smysluplnou odpověď.
Traces, metrics a logs musí dávat dohromady smysl
V .NET ekosystému dnes máme k dispozici vše potřebné.
Strukturované logy.
Metriky.
Distributed tracing (např. přes OpenTelemetry).
Skutečná hodnota ale vzniká až ve chvíli, kdy tyto vrstvy propojujeme.
Když dokážeme sledovat jeden request napříč službami.
Když víme, jaký má dopad na výkon.
A když k tomu máme kontext z logů.
Instrumentace je součást návrhu, ne dodatek
Častá chyba je řešit observability až ve chvíli, kdy něco nefunguje. A to už bývá pozdě.
Dobře navržený systém počítá s observability od začátku.
Jasně definované eventy.
Konzistentní struktura logů.
Smysluplné metriky.
To všechno umožňuje reagovat rychleji a s menší nejistotou.
Nejde o nástroje, ale o schopnost porozumět systému
Nástroje se budou stále měnit. Ale schopnost rychle pochopit, co se v systému děje, zůstává klíčová.
A právě to je rozdíl mezi tím „mít logy“ a skutečně rozumět systému.
Jak dnes ve vašem týmu přistupujete k observability? Spíš jako k logování, nebo jako k nástroji pro pochopení systému? 💭

