Dağıtılmış uygulamalarda sorun giderme

AWS'de Uygulama Dağıtımı

Dunieski Otano

Amazon Web Services Solutions Architect

Görev zaman aşımına uğradı

  • Bir fonksiyon bazen başarısız oluyor
  • Günlükte "Task timed out" yazıyor
  • İmza asıl nedeni işaret ediyor

Zaman aşımına uğramış bir Lambda görevi gösteren hata günlük satırının yanında bir kronometre

AWS'de Uygulama Dağıtımı

Yaygın Lambda hata imzaları

4'lü ızgarada Lambda hata imzaları: Zaman aşımı ve task-timed-out günlüğü, Throttle ve TooManyRequestsException, Erişim Engellendi ve AccessDeniedException, Bellek Yetersiz ve signal-killed hatası

  • Zaman aşımı: "Task timed out after N seconds"
  • Kısıtlama: TooManyRequestsException
  • IAM reddi: AccessDenied, yetkili değil
  • Bellek yetersiz: çalışma zamanı ortada sonlandırıldı
AWS'de Uygulama Dağıtımı

Başarısız bir fonksiyona ilk tepki

  • Bir şey değiştirmeden önce hata mesajını oku
  • Bilinen bir imza ile eşleştir
  • Zaman aşımları için aşağı akış çağrı gecikmesini kontrol et
  • Bir şey değiştir, sonra tekrar test et

Sorun giderme karar döngüsü: hata mesajını oku, bilinen imza ile eşleştir, aşağı akış gecikmesini kontrol et, bir şey değiştir ve tekrar test et

AWS'de Uygulama Dağıtımı

CloudWatch Logs Insights

Bir Logs Insights sorgusu daraltmak için filter, özetlemek için stats kullanır. Burada, dakikada hata sayar:

fields @timestamp, @message
| filter level = "ERROR"
| stats count() as errors by bin(1m)
| sort errors desc
AWS'de Uygulama Dağıtımı

Entegrasyon hatalarını iki taraftan ayıklama

  • Hatalar sıkça servislerin arasında olur
  • Çağıran ve çağrılan günlüklerini oku
  • İstek kimliği veya iz kimliği ile eşleştir
  • Aradaki boşluk kopma noktasını gösterir

İstek kimliğine göre hizalanmış çağıran ve çağrılan günlükleri; aradaki boşluk isteğin durduğu entegrasyon kopma noktası olarak etiketlenmiş

AWS'de Uygulama Dağıtımı

Sağlık denetimleri ve hazırlık yoklamaları

Yük dengeleyici trafiği yeşil onaylı sağlıklı hedeflere yönlendiriyor; art arda sağlık denetimi hatalarından sonra başarısız hedef çevrimden çıkarılıyor

  • Sağlık denetimi: örnek canlı ve hizmet veriyor mu?
  • Yük dengeleyiciler yalnızca sağlıklı hedeflere yönlendirir
  • Hazırlık: trafiği almaya hazır mı?
  • Başarısız denetimler hedefi rotasyondan çıkarır
AWS'de Uygulama Dağıtımı

Bir sorun giderme el kitabı

  • Oku: hatayı ve imzayı eşleştir
  • Sorgula: Logs Insights ile günlükleri daralt
  • İlişkilendir: iki tarafı istek veya iz kimliğiyle
  • Tek bir şey değiştir ve doğrula

Dört adımlı sorun giderme kılavuzu: Hata oku ve imza ile eşleştir, Kapsam için Insights ile günlükleri sorgula, İki tarafı iz kimliğiyle ilişkilendir, Tek bir şey değiştir ve doğrula

AWS'de Uygulama Dağıtımı

Hadi pratik yapalım!

AWS'de Uygulama Dağıtımı

Preparing Video For Download...