Sentry İle Hatalar Kontrol Altında Hotel WD'nin Gerçek Zamanlı İzleme Sistemi Devrede

Hotel WD altyapısına Sentry production observability platformu entegre edildi. Misafirleriniz sitenizde bir hata ile karşılaşırsa siz duymadan önce mühendislerimiz haber alıyor. Kurumsal düzeyde sessiz hata takibi artık Hotel WD standardı.

Sentry İle Hatalar Kontrol Altında: Hotel WD'nin Gerçek Zamanlı İzleme Sistemi Devrede

Misafiriniz "Rezervasyon Yap" butonuna bastı, sayfa beklenenden farklı çalıştı. Bir hata pop-up'ı gördü, kapattı, başka bir otel aradı. Sizin haberiniz oldu mu?

Çoğu otel için bu sorunun cevabı hayırdır. Ziyaretçiler nadiren bildirim formu doldurur, müşteri hizmetlerini arar, e-posta yazar. Sayfayı kapatırlar, işin sonunda otel sahibi günler sonra "bu ay rezervasyon neden düştü" diye bakarken kayıp çoktan gerçekleşmiştir.

Bu sessiz kayıp, yazılım dünyasında silent failure (sessiz başarısızlık) olarak adlandırılır ve büyük ölçekte çalışan her web sitesinin baş düşmanıdır.

Bu hafta Hotel WD altyapısının çekirdeğine entegre ettiğimiz Sentry sistemi tam olarak bu sorunu çözüyor: kullanıcınız bir hata ile karşılaştığı saniyede mühendislik ekibimizin ekran alarmı çalıyor. Çoğu durumda kullanıcı sayfayı kapatmadan biz devreye giriyoruz.

Sentry gerçek zamanlı hata akışı: Hotel WD App → Sentry Cloud → Mühendis ekibe alarm

Sentry Nedir? Kısa Bir Tanıtım

Sentry, dünyada GitHub, Microsoft, Disney, Spotify dahil 100.000'den fazla şirketin kullandığı kurumsal bir production observability (üretim ortamı gözlemlenebilirlik) platformudur. 2012'de San Francisco'da kuruldu, Almanya'da veri merkezi var.

Tek işi: çalışan web siteleriniz ve uygulamalarınızda yaşanan hataları, performans tıkanıklıklarını ve kullanıcı deneyimi sorunlarını gerçek zamanlı olarak yakalamak ve geliştirici ekibe iletmektir.

Hotel WD ile çalışan her otel artık bu altyapının bir parçasıdır. Sizin tarafınızda hiçbir kurulum, ek ödeme veya ayar yok — ama arka planda Hotel WD mühendislik ekibimiz sitenizi sürekli izliyor.

Önceki Dünya vs Yeni Dünya

Önceki dünya: Siteniz bir köşede beklenmedik bir durumla karşılaştı. Misafir kapattı. Bir sonraki rezervasyon kaybedildi. Aylık raporda "rezervasyon düşüşü" görüyor, sebebi anlayamıyordunuz. Kayıp sessizdi.

Yeni dünya: Siteniz bir köşede beklenmedik bir durumla karşılaştığı an mühendislik ekibimiz 30 saniye içinde bilgilendirilir. Çoğu hata fark edilmeden 30 dakika içinde yamanır. Misafir tekrar denediğinde sorun yoktur. Aylık raporunuzda kayıp görünmez çünkü kayıp yaşanmaz.

Bu, kurumsal e-ticaret sitelerinin (Amazon, Booking, Airbnb gibi) yıllardır kullandığı standart bir yöntem. Hotel WD bu metodolojiyi tek otel ölçeğine indirgedi ve tüm müşterilerine sunuyor.

Sentry Hangi Detayları Yakalar?

Bir hata patladığında Sentry'nin topladığı bağlam:

  • Tam hata izi (stack trace) — Hangi dosya, hangi kod satırı, hangi fonksiyon zinciri tetikledi.
  • Misafir bağlamı — Hangi tarayıcı, hangi cihaz, hangi ülke, hangi otel sayfası, hangi oda, hangi tarih aralığı.
  • Önceki adımlar (breadcrumb) — Misafir bu hataya gelene kadar hangi sayfalardan geçti, hangi butonlara tıkladı.
  • Sürüm bilgisi — Hangi Hotel WD güncellemesinden sonra ortaya çıktı? Bu çok önemli: bir bug regression mı yoksa yeni mi tartışmasını ânında çözer.
  • Tekrarlama deseni — Aynı hata 50 kullanıcıda mı 1 kullanıcıda mı? Belirli bir tarayıcıda mı yoksa hepsinde mi?
  • Gerçek zamanlı alarm — Yeni bir hata türü patladığında saniyeler içinde Slack ya da e-posta uyarısı.
  • Otel sahibi olarak siz bu detayların hiçbirini görmek zorunda değilsiniz. Bizim mühendislik ekibimiz görür, çözer, deploy eder. Siz sadece sonucu yaşarsınız: siteniz çalışıyor.

    Bu Sprint'te Hotel WD Çekirdeğine Yerleşen Diğer İyileştirmeler

    Sentry tek başına yeterli değildir; etrafına doğru altyapıyı kurmak gerekir. Bu hafta gönderdiğimiz değişiklikler:

    1. Çoklu Runtime Hata Yakalama

    @sentry/nextjs SDK'i Hotel WD çekirdeğine entegre edildi. Sunucu tarafı (Node.js runtime), edge runtime ve tarayıcı tarafı için ayrı kanallar kuruldu. Misafir verisinin (PII) varsayılan gönderimi kapatıldı — yalnızca anonim hata izleri ve teknik bağlam gönderilir, KVKK ve GDPR uyumlu.

    2. Sağlık Kontrolü Endpoint'i (/api/health)

    Sunucumuzun ayakta olup olmadığını saniyede bir test eden bir endpoint açıldı. PostgreSQL veritabanına ping atar, 200 OK ya da 503 Degraded döner. Bu sayede:

  • Container ölmüşse otomatik yeniden başlar.
  • İleride yük dengeleyici eklendiğinde sağlıksız sunucu trafik almaz.
  • Mavi-yeşil (blue-green) deploy stratejisi için altyapı hazır.
  • 3. Önbellek Tutarlılığı (Cloudflare Cache TTL Senkronizasyonu)

    Cloudflare edge cache ile Next.js iç önbelleği arasındaki süre uyumsuzluğu giderildi. Bir oda fiyatı güncellendiğinde teorik olarak 7 gün boyunca eski fiyat görünme riski vardı; bu pencere 24 saate sıkıştırıldı. Oda müsaitlik ve fiyat değişikliklerinin yansıması artık en kötü ihtimalle 1 gün içinde tamamlanıyor.

    4. Layout Shift Düzeltmesi (Google PageSpeed CLS)

    Çerez bildirim banner'ımız sayfa yüklenirken "pop-in" yapıyordu. Bu, Google PageSpeed metriklerinde Cumulative Layout Shift puanını yükselten gizli bir sorundu ve doğrudan SEO sıralamasına etki eder. Banner'ı her zaman DOM'da hazır tutup yalnızca opaklık geçişiyle gösterilecek şekilde düzelttik.

    5. Yapım Hattı Hijyeni (Docker Image)

    Üretim Docker image'ımızın yapı bağlamı 600MB seviyesinden 37MB'a düştü. Deploy süresi 1-2 dakika kısaldı, sunucu bant genişliği tasarrufu oldu. Container'ın kendi sağlığını sürekli ölçmesi için HEALTHCHECK direktifi eklendi.

    6. Eşzamanlı Deploy Koruması

    GitHub Actions deploy hattında iki güncellemenin aynı anda başlaması durumunda yarış oluşabilirdi. Concurrency group ile bu yarış kapatıldı.

    Bu Bilgilerin Sizin İçin Anlamı

    Yukarıdaki teknik detayların hepsini bilmek zorunda değilsiniz. Ama Hotel WD ile çalışıyorsanız, bu detayların sizin adınıza uygulandığını bilmenizde fayda var.

    Hotel WD'nin ticari vaadi tek bir cümlede özetlenebilir:

    "Otelciliğin teknik kısmıyla siz uğraşmayın, biz uğraşırız."

    Bu vaat, sadece sayfa tasarlamakla bitmez. Sayfanın canlı kaldığında, hata aldığında, yavaşladığında, fiyatlar güncellendiğinde, ödeme alındığında — her aşamada arka planda mühendislik standartlarının çalışıyor olması gerekir.

    Bu hafta gönderdiğimiz altyapı katmanı, Hotel WD'nin "tek otelin kişisel projesi" tabakasından "kurumsal SaaS standardı" tabakasına geçişinin somut adımıdır.

    Karşılaştırma Tablosu

    KonuÖnceki DurumYeni Hotel WD StandardıOtelci İçin Anlamı
    Hata Tespit SüresiSaatler ya da günler30 saniyeMisafir kapatmadan müdahale
    Hata Bağlamı"Bir şey çalışmıyor"Stack trace + tarayıcı + adım iziÇözüm 30 dk içinde
    Sessiz HataSayılamayan kayıpSıfır görünmez hataAylık rapor doğru
    Sağlık KontrolüYok/api/health saniye başı pingOtomatik kurtarma
    Cache Tutarlılığı7 gün riski1 gün maxFiyat/müsaitlik tazeliği
    Sayfa Hızı (CLS)Layout shift cezasıSıfır shiftSEO sıralama avantajı
    Build Boyutu~600MB37MBHızlı deploy, az hata penceresi

    Sırada Ne Var?

    Bu sprint'te attığımız adımlar bir başlangıç. Önümüzdeki haftalarda eklenecek katmanlar:

  • Slack/E-posta gerçek zamanlı uyarıları — Hata patladığında ekibimize anında bildirim entegrasyonu.
  • Otomatik veritabanı yedekleme + restore tatbikatı — Felaket senaryolarında sıfır veri kaybı garantisi.
  • İki faktörlü kimlik doğrulama (2FA) — Otel sahibi hesapları için kritik güvenlik katmanı.
  • GDPR/KVKK veri ihracı endpoint'i — Misafirin kendi kişisel verisini talep etme hakkı için API.
  • Yük testi (k6 ile 100 eşzamanlı kullanıcı) — Trafik patlaması sırasında sistem davranışının ölçümü.
  • Status page — Sistem sağlık durumunu kamuoyuna açık şekilde yayınlama.
  • Hotel WD'nin yol haritası, otelcilik dünyasında çoğu rakipte bulunmayan bir şeffaflıkla ilerliyor.

    Kapanış

    Bir misafir sitenize girdiğinde "her şey çalışıyor mu" diye düşünmesini istemiyoruz. Düşünmeden rezerve etmesini istiyoruz.

    Bunun için önce her şeyin gerçekten çalıştığından emin olmamız gerekiyor. Ve her şeyin çalıştığından emin olmak için sürekli ölçmek gerekiyor.

    Sentry, bu güveni kuran çekirdek katmanlardan biri. Bugün Hotel WD altyapısının bir parçası. Yarın daha fazlasının.

    Hotel WD ile Tanışın ve Otelinizi Mühendislik Standartlarına Taşıyın →

    Tahir Dinç
    YAZAR

    Tahir Dinç

    Turkey27+ YIL DENEYİM

    I have been working in the digital field since 1999. I still hold the position of Digital Marketing Manager at Türk SEM. I have also been involved in tourism-related activities since 2005.

    Hotel WD·Strategy Team