.NET Core Web API: Global Exception Handling ve Problem Details
29 Eki 2025
11:10
YouTube'da izle
Açıklama
Bu videoda ASP.NET Core uygulamalarında etkili bir Global Exception Handling (Global Hata Yönetimi) yapısının nasıl kurulacağı ele alınıyor. İşte öne çıkan başlıklar:
- Neden Global Hata Yönetimi?: Her action içinde try-catch kullanmak yerine, tüm pipeline'ı kapsayan merkezi bir yapı kurmanın kod tekrarını önlediği ve hata formatını standartlaştırdığı vurgulanıyor (1:27).
- Middleware vs. Filter: Global hata yönetimi için Exception Filter yerine tüm istek akışını kontrol edebilen Exception Middleware kullanımının daha kapsamlı ve önerilen bir yaklaşım olduğu açıklanıyor (1:40).
- ProblemDetails (RFC7807): API hatalarının standart bir formatta (Type, Title, Status, Detail, Instance gibi alanlarla) döndürülmesi için bu standarttan yararlanılıyor (3:29).
- Trace ID ile İzlenebilirlik: Hataların loglarda veya izleme araçlarında (OpenTelemetry gibi) kolayca bulunabilmesi için her HTTP isteğine benzersiz bir Trace ID eklenmesinin önemi anlatılıyor (3:51).
- Uygulama Örnekleri:
- Özel hata sınıfları (örneğin Not Found Exception) ile HTTP durum kodlarının eşleştirilmesi (5:30).
- Geliştirme (Development) ve canlı (Production) ortamlar için hata detaylarının ortama göre özelleştirilmesi (6:14).
- Middleware içinde try-catch yapısı kurularak hataların merkezi bir şekilde yakalanması ve loglanması (6:37).
Özetle, yazar hata yönetimini Filter mekanizmasından ayırıp tamamen Middleware ve özel domain exception sınıfları üzerinden yürütmenin daha temiz ve profesyonel bir mimari sunduğunu belirtiyor (10:45).
Etiketler