Penelusuran terdistribusi dengan AWS X-Ray dan pencatatan terstruktur

Mendeploy Aplikasi di AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Permintaan lambat yang tak ada yang menemukan

  • Satu permintaan butuh empat detik
  • Log tiap layanan tampak baik jika dilihat sendiri
  • Tak ada yang melihat jalur lengkapnya

Kaca pembesar menelusuri satu permintaan lambat di peta layanan terdistribusi dengan satu node hambatan berwarna merah

Mendeploy Aplikasi di AWS

Apa yang dipecahkan penelusuran terdistribusi

Silo log per layanan yang terisolasi di merah di kiri dibanding garis waktu penelusuran Gantt X-Ray terpadu yang menyatukan permintaan yang sama melintasi API Gateway, Lambda, DynamoDB, dan API eksternal berwarna hijau

  • Satu permintaan menyentuh banyak layanan
  • Log saja tak bisa menampilkan jalur end-to-end
  • Trace menyatukan seluruh permintaan
  • Lihat persis di mana waktu habis
Mendeploy Aplikasi di AWS

Segmen, subsegmen, dan peta layanan

  • Segment: pekerjaan yang dilakukan satu layanan
  • Subsegment: unit di dalam segmen, seperti panggilan DB
  • Service map: grafik visual semua segmen
  • Latensi dan error terlihat di tiap node

Anatomi penelusuran X-Ray: satu segmen per layanan dengan subsegmen untuk panggilan DB, dirangkai menjadi grafik peta layanan yang menampilkan latensi dan tingkat error di tiap node

Mendeploy Aplikasi di AWS

Anotasi vs metadata


Anotasi

  • Key-value terindeks, sehingga dapat difilter
  • Gunakan untuk hal yang akan Anda cari, seperti tier pelanggan

Metadata

  • Detail tambahan, tidak diindeks
  • Lampirkan untuk konteks, tetapi tidak bisa dicari
Mendeploy Aplikasi di AWS

Mengorelasikan log dengan trace ID

  • Tiap trace punya trace ID unik
  • Cantumkan trace ID dalam log terstruktur Anda
  • Loncat dari trace lambat ke baris log persisnya
  • Log dan trace jadi satu investigasi

Baris log terstruktur dengan field xray_trace_id disorot, panah dari tampilan trace X-Ray ke baris log yang cocok di CloudWatch Logs untuk investigasi terhubung

Mendeploy Aplikasi di AWS

Membaca peta layanan untuk menemukan hambatan

Peta layanan X-Ray dengan node berlatensi tinggi disorot, pembahasan detail ke garis waktu trace yang menampilkan bilah segmen terpanjang sebagai hambatan

  • Mulai dari service map, bukan log
  • Temukan node dengan latensi tertinggi
  • Telusuri garis waktu trace-nya
  • Segmen terpanjang adalah tersangka Anda
Mendeploy Aplikasi di AWS

Menelusuri seluruh permintaan

  • API Gateway, Lambda, dan panggilan hilir semuanya ditrace
  • Masing-masing menambahkan segmen ke trace yang sama
  • Satu trace ID menyatukan log dan segmen
  • Visibilitas end-to-end untuk tiap permintaan

Penelusuran terdistribusi end-to-end dari API Gateway melalui Lambda ke DynamoDB dan API eksternal, satu trace ID terlihat di setiap header segmen yang menyatukan semua log dan segmen

Mendeploy Aplikasi di AWS

Ayo berlatih!

Mendeploy Aplikasi di AWS

Preparing Video For Download...