Distribuované trasování s AWS X-Ray a strukturované logování
Nasazování aplikací na AWS
Dunieski Otano
Amazon Web Services Solutions Architect
Pomalý požadavek, který nikdo nenašel
Jeden požadavek trvá čtyři sekundy
Logy každé služby vypadají v pořádku
Nikdo nevidí celou cestu
Co distribuované trasování řeší
Jeden požadavek prochází
mnoha službami
Logy samotné
celou cestu
neukáží
Trace
spojí celý požadavek dohromady
Vidíš přesně, kde čas ubyl
Segmenty, subsegmenty a mapa služeb
Segment
: práce vykonaná jednou službou
Subsegment
: jednotka uvnitř segmentu, např. volání DB
Mapa služeb
: vizuální graf všech segmentů
Každý uzel zobrazuje latenci a chyby
Anotace vs. metadata
Anotace
Indexované páry klíč–hodnota, tedy
filtrovatelné
Používej je pro atributy, podle nichž budeš hledat, např. zákaznická úroveň
Metadata
Další detail,
bez indexování
Přidávej je pro kontext, ale hledat podle nich nelze
Korelace logů s trace ID
Každé trace má jedinečné
trace ID
Zahrň trace ID do svých
strukturovaných logů
Přejdi přímo z pomalého trace na konkrétní řádky logu
Logy a traces se stanou jedním vyšetřováním
Čtení mapy služeb k nalezení úzkého místa
Začni u
mapy služeb
, ne u logů
Najdi uzel s nejvyšší
latencí
Přejdi do jeho
trace timeline
Nejdelší segment je tvůj podezřelý
Trasování celého požadavku
API Gateway, Lambda i podřízená volání jsou
trasována
Každé přidá svůj
segment
ke stejnému trace
Jedno trace ID propojuje logy a segmenty
Viditelnost celého požadavku od začátku do konce
Pojďme cvičit!
Nasazování aplikací na AWS
Preparing Video For Download...