API Endpoint'lerinizi Etkili Bir Şekilde Nasıl İzlersiniz?
API monitoring için pratik rehber — neyi izlemelisiniz, nasıl kurulur, hangi metrikler önemlidir ve sorunları kullanıcılarınızdan önce nasıl yakalarsınız.
API'niz ürününüzün omurgasıdır. Mobil uygulamalar, entegrasyonlar, webhook'lar ve partner hizmetlerinin hepsi ona bağlıdır. API'niz çöktüğünde veya yavaşladığında, patlama yarıçapı kendi web sitenizin çok ötesine uzanır — ona bağlı her istemci uygulaması etkilenir.
Yine de birçok ekip API monitoring'i bir sonraki düşünce olarak ele alır: her 5 dakikada bir ping'lenen tek bir health check endpoint'i. Bu monitoring değil — en iyisini umut etmektir.
Neyi İzlemeli?
Health Check Endpoint'leri
Her API'nin özel bir health check endpoint'i olmalıdır — genellikle GET /health veya GET /api/status. Bu endpoint:
- Hizmet sağlıklı olduğunda 200 yanıtı döndürmeli
- Kritik bağımlılıkları kontrol etmeli (database bağlantısı, cache erişilebilirliği)
- Hızlı yanıt vermeli (< 200ms) böylece monitoring kontrolleri timeout olmadan tamamlansın
- Kimlik doğrulama gerektirmemeli (harici monitor'ler erişebilsin diye)
İyi bir health check yanıtı:
```json
{
"status": "healthy",
"version": "2.4.1",
"uptime": 847293,
"checks": {
"database": "connected",
"cache": "connected",
"queue": "connected"
}
}
```
Bu endpoint'i her 15-30 saniyede izleyin. İlk savunma hattınızdır.
Kritik İş Endpoint'leri
Health check'in ötesinde, işiniz için en önemli endpoint'leri izleyin:
- Authentication:
POST /auth/login— Kullanıcılar giriş yapamıyorsa, başka hiçbir şey önemli değil. - Temel CRUD operasyonları: Kullanıcılarınızın bağımlı olduğu birincil okuma/yazma endpoint'leri.
- Ödeme endpoint'leri: API üzerinden ödeme işliyorsanız, bunlar özel monitoring hak eder.
- Webhook alıcıları: Ödeme işlemcilerinden, CRM'lerden veya diğer hizmetlerden webhook alıyorsanız.
Her endpoint'i izlemenize gerek yok — arızanın en yüksek iş etkisine sahip olduğu noktalara odaklanın.
Response Time
8 saniye süren bir 200 OK yanıtı gerçekten "OK" değildir. Response time yüzdeliklerini izleyin:
- p50 (medyan): Çoğu kullanıcının deneyimlediği
- p95: Daha yavaş isteklerin neye benzediği
- p99: İsteklerin en kötü %1'i
Temel çizginize dayalı uyarı eşikleri belirleyin:
- Uyarı: p95 response time > normal temel çizginizin 2 katı
- Kritik: p95 response time > normal temel çizginizin 5 katı
Response time düşüşü genellikle toplam arızadan önce gelir. Yavaşlamayı erken yakalamak, bir kesintiye dönüşmeden önce kaynakları ölçeklendirme, sorguları optimize etme veya kötü bir deployment'ı geri alma zamanı verir.
Hata Oranları
Hata status code'ları döndüren isteklerin yüzdesini izleyin:
- 4xx hataları: İstemci hataları. Ani bir artış, bozucu bir API değişikliği, authentication sorunları veya rate limiting sorunlarını gösterebilir.
- 5xx hataları: Sunucu hataları. Bunlar her zaman sizin tarafınızda bir şeylerin yanlış olduğunu gösterir.
%0,1'lik bir temel hata oranı normaldir. %1 veya daha yüksek bir artış araştırma gerektirir.
SSL Sertifika Süre Sonu
Süresi dolmuş bir SSL sertifikası API'nizi anında çevrimdışı yapar — ve tamamen önlenebilir. Sertifika süre sonunu izleyin ve uyarın:
- Süre sonundan 30 gün önce: Ekibe uyarı
- Süre sonundan 7 gün önce: Kritik uyarı
- Süre sonundan 1 gün önce: Acil uyarı
Bu, API downtime'ının en yaygın önlenebilir nedenlerinden biridir.
API Monitoring Nasıl Kurulur?
Adım 1: Kritik Endpoint'lerinizi Belirleyin
API endpoint'lerinizi önem sırasına göre listeleyin:
| Öncelik | Endpoint | Metod | Neden Önemli |
|---------|----------|-------|--------------|
| Kritik | /health | GET | Genel hizmet sağlığı |
| Kritik | /auth/login | POST | Kullanıcı authentication |
| Yüksek | /api/v1/users/me | GET | Temel kullanıcı endpoint'i |
| Yüksek | /api/v1/orders | GET | Birincil iş verisi |
| Orta | /api/v1/reports | GET | Analitik/raporlama |
Adım 2: Monitor Ayarlarını Yapılandırın
Her endpoint için:
- Kontrol aralığı: Kritik endpoint'ler her 15-30 saniyede. Diğerleri her 60 saniyede.
- Timeout: Beklenen response time'ınıza göre ayarlayın. p99'unuz 2 saniyeyse, timeout'u 5 saniye olarak ayarlayın.
- Doğrulama: Uyarmadan önce 2-3 ardışık başarısızlık isteyin.
- Bölgeler: Kullanıcılarınızın bulunduğu bölgelerden izleyin.
Adım 3: Keyword Doğrulaması Kurun
Sadece 200 status code kontrol etmeyin. Response body'yi doğrulayın:
- Health endpoint'i: Body'nin
"status":"healthy"içerdiğini doğrulayın - API endpoint'leri: Yanıtın geçerli JSON olduğunu doğrulayın
- Hata sayfaları: Body'nin
"error"veya"maintenance"İÇERMEDİĞİNİ doğrulayın
Bu, reverse proxy'nizin veya CDN'nizin 200 status code'lu bir önbelleğe alınmış hata sayfası döndürdüğü senaryoları yakalar.
Adım 4: Uyarıları Yapılandırın
Uyarıları severity'ye göre yönlendirin:
- Health endpoint çöktü: Slack + Email + Webhook (PagerDuty'ye)
- Kritik endpoint düşmüş: Slack + Email
- Kritik olmayan endpoint çöktü: Email
- SSL süresi doluyor: Email (30 gün), Slack + Email (7 gün)
Adım 5: Status Page Oluşturun
API'nizin harici tüketicileri varsa — partnerler, entegrasyonlar, mobil uygulamalar — API'nizi bir bileşen olarak halka açık bir status page oluşturun. Bu, tüketicilere yaşadıkları sorunların sizin tarafınızda olup olmadığını kontrol etmeleri için self-servis bir yol sağlar.
API Monitoring En İyi Uygulamaları
Kullanıcılarınızın Perspektifinden İzleyin
API'niz küresel olarak kullanıcılara hizmet veriyorsa, birden fazla coğrafi bölgeden izleyin. US-East'te hızlı olan bir API, Asia-Pacific'ten yavaş veya ulaşılamaz olabilir. Çok bölgeli monitoring, tek konumlu monitoring'in kaçırdığı gecikme sorunlarını ve bölgesel kesintileri yakalar.
Sadece API'nizi Değil, Bağımlılıkları da İzleyin
API'niz muhtemelen harici hizmetlere bağımlıdır: ödeme işlemcileri, email sağlayıcıları, OAuth sağlayıcıları, CDN'ler. Bunlar çöktüğünde, kodunuz düzgün olsa bile API'niz kısmen arızalanabilir.
Şunlar için monitor'ler kurun:
- Üçüncü taraf API sağlık sayfaları veya status endpoint'leri
- Harici hizmet response time'ları
- Harici alan adları için DNS çözümlemesi
Authentication Akışlarını Test Edin
Kimlik doğrulama gerektirmeyen bir health check endpoint'i sunucunun çalıştığını söyler, ancak kimlik doğrulamalı isteklerin çalışıp çalışmadığını söylemez. Token doğrulaması, oturum yönetimi veya OAuth entegrasyonunuz bozulursa, yalnızca kimlik doğrulamalı endpoint monitoring bunu yakalayacaktır.
Monitoring'i Sürümlendirin
Yeni bir API sürümü yayınladığınızda, monitoring'inizi güncelleyin. Yaygın hatalar:
/api/v1/'i izlemek ama/api/v2/'yi monitor eklemeden deploy etmek- Tüm istemciler geçiş yapmadan v1 monitor'lerini kaldırmak
- İstemcilerin hâlâ bağımlı olduğu deprecated endpoint'leri izlememek
Sadece Eşikleri Değil, Trendleri Takip Edin
Tek bir yavaş yanıt endişe verici değildir. p95 response time'ın üç hafta içinde 200ms'den 400ms'ye ve 800ms'ye kademeli artışı saatli bir bombadır. Monitoring dashboard'larınızı haftalık gözden geçirin ve trendleri arayın:
- Response time artıyor mu?
- Hata oranları yükseliyor mu?
- Health check response time büyüyor mu?
Trendler kesintileri öngörür. Onları erken yakalamak, kesintileri önler.
Yaygın API Monitoring Hataları
Sadece health check izleme: Health check'in geçmesi API'nizin sağlıklı olduğu anlamına gelmez. İş açısından kritik endpoint'leri de izleyin.
Çok seyrek kontrol: 5 dakikalık aralıklar, bir kesintiyi 5 dakika boyunca tespit edemeyebileceğiniz anlamına gelir. Kritik API'ler için her 15-30 saniyede kontrol edin.
Response time'ı görmezden gelme: 200 döndüren ama 15 saniye süren bir endpoint, çoğu istemci için etkili bir şekilde bozuktur. Sadece erişilebilirliği değil, response time'ı da izleyin.
Keyword doğrulaması yok: Önbelleğe alınmış bir hata sayfasından veya bakım sayfasından gelen 200 status code yanlış pozitiftir. Her zaman yanıt içeriğini doğrulayın.
Birden fazla bölgeden izlememe: Tüm monitor'leriniz tek bir konumdaysa, bölgesel kesintileri kaçırırsınız.
Sonuç
Etkili API monitoring, bir health check endpoint'ine ping atmaktan öteye geçer. Kritik iş endpoint'lerini izlemek, response time trendlerini takip etmek, yanıt içeriğini doğrulamak ve doğru kişileri doğru kanallardan uyarmak anlamına gelir.
API'nizin güvenilirliği, ona bağlı her istemciyi doğrudan etkiler. Onu düzgün bir şekilde izlemeye yatırım yapın ve sorunları kullanıcılarınız — ve onların kullanıcıları — deneyimlemeden önce yakalayacaksınız.
API'nizi güvenle izleyin. Ücretsiz başlayın — keyword doğrulamalı HTTP monitoring, response time takibi ve çok bölgeli kontroller.