Pano
Analytics Panosu, proje içerisinde yer alan API Proxy'lerin log verilerinden oluşturulan metrikleri görselleştirir. Pano, API Proxy'lerin genel durumunu izlemeyi ve performans analizini sağlar.
Apinizer Yönetim Konsolunda API Trafiğinin sorgulanması ve analitik olarak görselleştirilmesi ancak ilgili ortama Elasticsearch Konnektörü eklenmesi ile mümkün olmaktadır.
Bir API Proxy birden fazla Ortam'a yüklenebildiği için metrikler, ortam bazlı sorgulanmaktadır. Sayfanın üst kısmından ortam seçimi yapılmalıdır.
Özellikler
API Proxy'lerin genel durumunu, toplam istek sayısını, başarı/hata oranlarını görüntüleyebilirsiniz
Yanıt süreleri, işlem süreleri ve backend performans metriklerini analiz edebilirsiniz
API trafiğini zaman içinde izleyebilir, yoğunluk dönemlerini tespit edebilirsiniz
Hata oranlarını, hata tiplerini ve hatalı endpoint'leri izleyebilirsiniz
Sayfanın otomatik yenileme özelliğini aktifleştirerek metrikleri canlı olarak takip edebilirsiniz
Farklı ortamlar için ayrı ayrı metrikler görüntüleyebilirsiniz
Sayfanın üst kısmında yer alan Otomatik Yenileme seçeneği ile ekrandaki metrikler otomatik olarak yenilenebilir.
Pano Metrikleri
Pano, aşağıdaki ana metrik kategorilerini içerir:
Genel Metrikler
| Metrik | Açıklama |
|---|---|
| Toplam İstek Sayısı | Seçilen zaman aralığında gelen toplam API isteği sayısı |
| Başarılı İstek Sayısı | HTTP 2xx status code ile dönen istekler |
| Başarısız İstek Sayısı | HTTP 4xx ve 5xx status code ile dönen istekler |
| Başarı Oranı | Başarılı isteklerin toplam isteklere oranı (%) |
| Hata Oranı | Başarısız isteklerin toplam isteklere oranı (%) |
| Ortalama Yanıt Süresi | Tüm isteklerin ortalama yanıt süresi (ms) |
Trafik Metrikleri
- Zaman içinde istek sayısının değişimi (line chart)
- Yoğunluk dönemlerinin tespiti
- Trend analizi
- Hangi API Proxy'lerin ne kadar kullanıldığı
- Kullanım yoğunluğu karşılaştırması
- En çok kullanılan API'ler
- En çok çağrılan endpoint'ler
- Endpoint kullanım istatistikleri
- Çağrı sayısı sıralaması
- GET, POST, PUT, DELETE metodlarının kullanım oranları
- Metod bazında istek sayıları
Performans Metrikleri
- Tüm isteklerin ortalama yanıt süresi
- Zaman içinde yanıt süresinin değişimi
- Performans trend analizi
- Farklı zaman aralıklarında yanıt süreleri
- P50, P95, P99 percentile değerleri
- Min/Max yanıt süreleri
- Backend API'lerin yanıt süreleri
- Backend bağlantı süreleri
- Upstream performans metrikleri
- En yüksek yanıt süresine sahip endpoint'ler
- Optimizasyon gerektiren API'ler
Hata Metrikleri
- 2xx, 4xx, 5xx status code oranları
- Başarı/Hata dağılımı (pie chart)
- Authentication errors
- Routing errors
- Policy errors
- Backend errors
- Yüksek hata oranına sahip API Proxy'ler
- Sorunlu endpoint'ler
- Hata oranının zaman içindeki değişimi
- Hata spike'larının tespiti
İstemci Metrikleri
- En çok istek gönderen istemciler
- İstemci bazında istek sayıları
- Client IP/Key bazında analiz
- İstemci bazında başarı/hata oranları
- Blocked/Throttled istemciler
Otomatik Yenileme
Pano, otomatik yenileme özelliği ile metriklerin canlı olarak takip edilmesini sağlar.
Sayfanın üst kısmında yer alan Otomatik Yenileme dropdown menüsünden yenileme aralığını seçin
- 10 saniye
- 30 saniye
- 1 dakika
- 5 dakika
Seçilen aralıkta ekrandaki metrikler otomatik olarak yenilenir
Otomatik yenileme aktif olduğunda, sayfa değiştirilene kadar metrikler belirli aralıklarla güncellenmeye devam eder.
Çok kısa yenileme aralıkları (10-30 saniye) Elasticsearch üzerinde ek yük oluşturabilir. Üretim ortamlarında 1-5 dakika aralıkları önerilir.
Ortam Bazlı Sorgulama
Pano metrikleri ortam bazlı sorgulanır. Her ortam için ayrı metrikler görüntülenir.
Ortam Seçimi
Sayfanın üst kısmında yer alan ortam seçici dropdown'ı açın
Metrikleri görmek istediğiniz ortamı seçin (Development, Test, Production, vb.)
Seçilen ortam için metrikler otomatik olarak yüklenir ve gösterilir
Farklı ortamlar farklı Elasticsearch konnektörlerine bağlı olabilir. Eğer birden fazla Elasticsearch Konnektörü tanımlanmışsa, Apinizer Yönetim Konsolunda ilk eklenen Elasticsearch Konnektöründeki veriler görüntülenir.
Zaman Aralığı Filtreleme
Metrikler için zaman aralığı seçimi yapabilirsiniz:
| Zaman Aralığı | Açıklama |
|---|---|
| Son 15 Dakika | Gerçek zamanlı izleme için ideal |
| Son 1 Saat | Kısa vadeli performans analizi |
| Son 24 Saat | Günlük trafik analizi |
| Son 7 Gün | Haftalık trend analizi |
| Son 30 G ün | Aylık kullanım istatistikleri |
| Özel Aralık | Başlangıç ve bitiş tarihi seçimi |
Kısa zaman aralıkları (15 dakika - 1 saat) gerçek zamanlı izleme için, uzun zaman aralıkları (7-30 gün) ise trend analizi ve kapasite planlaması için uygundur.
Metrik Yorumlama ve Kullanım
Pano metriklerini doğru yorumlayarak API'lerinizin sağlığını izleyebilirsiniz.
Başarı Oranı Yorumlama
| Başarı Oranı | Durum | Önerilen Aksiyonlar |
|---|---|---|
| > 99% | Çok İyi | Normal izleme devam etsin |
| 95-99% | İyi | Hataları izleyin, küçük iyileştirmeler yapın |
| 90-95% | Dikkat | Hata nedenlerini analiz edin, düzeltmeler planlayın |
| < 90% | Kritik | Acil müdahale gerekli, detaylı analiz yapın |
Yanıt Süresi Yorumlama
| Ortalama Yanıt Süresi | Durum | Önerilen Aksiyonlar |
|---|---|---|
| < 100ms | Mükemmel | Mevcut performansı koruyun |
| 100-500ms | İyi | Optimizasyon fırsatlarını değerlendirin |
| 500ms-2s | Yavaş | Performans optimizasyonu yapın |
| > 2s | Kritik | Acil optimizasyon gerekli, cache kullanımı |
Trafik Analizi
Yoğunluk Dönemleri:
- Hangi saatlerde trafik yoğun?
- Hangi günler daha fazla istek alınıyor?
- Kapasite planlaması yapılmalı mı?
Ani Artışlar (Spike):
- Beklenmeyen trafik artışları var mı?
- DDoS saldırısı şüphesi var mı?
- Rate limiting yeterli mi?
Trend Değişiklikleri:
- Trafik artıyor mu / azalıyor mu?
- Mevsimsel değişiklikler var mı?
- Yeni özellik lansmanı etkisi nasıl?
Problemlerin Tespiti ve Çözümü
Pano ile yaygın problemleri tespit edebilir ve çözüm üretebilirsiniz.
Yüksek Hata Oranı
Sorun Tespiti:
- Hata oranı %5'in üzerinde
- Durum Kodu Dağılımında yüksek 4xx/5xx oranı
- Belirli endpoint'lerde yoğunlaşmış hatalar
Analiz Adımları:
- En Çok Hata Veren API'ler metriğine bakın
- API Trafiği sayfasından hatalı istekleri filtreleyin
- Tracing ile detaylı hata analizi yapın
Olası Çözümler:
- Backend API sorunları → Backend ekibini bilgilendirin
- Authentication hataları → Credential'ları kontrol edin
- Validation hataları → İstek formatını düzeltin
Yavaş Performans
Sorun Tespiti:
- Ortalama yanıt süresi arttı
- En Yavaş Endpoint'ler listesinde sorunlu API'ler var
- Backend performansı düşük
Analiz Adımları:
- En Yavaş Endpoint'ler metriğini inceleyin
- Tracing ile politika performansını analiz edin
- Backend yanıt sürelerini kontrol edin
Olası Çözümler:
- Cache politikası ekleyin
- Database sorgularını optimize edin
- Backend timeout değerlerini ayarlayın
- Yavaş politikaları optimize edin veya kaldırın
Anormal Trafik Artışı
Sorun Tespiti:
- Ani ve beklenmeyen istek artışı
- Belirli IP'lerden yoğun istek
- Rate limit aşımları
Analiz Adımları:
- Zamana Göre İstek Sayısı grafiğinde spike'ları tespit edin
- En Aktif İstemciler metriğini kontrol edin
- API Trafiği ile şüpheli istekleri inceleyin
Olası Çözümler:
- Rate limiting ve throttling politikaları ekleyin
- IP blacklist/whitelist uygulayın
- DDoS koruması aktifleştirin
Kullanım Senaryoları
Senaryo 1: Günlük Operasyonel İzleme
Amaç: Günlük olarak API'lerin sağlığını kontrol etmek.
- Genel metrikler: Başarı oranı, toplam istek sayısı
- Gece boyunca herhangi bir sorun var mı?
- Hata oranı normal seviyelerde mi?
- Yeni hata tipleri var mı?
- Yanıt süreleri normal mi?
- Yavaşlamalar var mı?
- Beklenmeyen trafik artışları
- Yeni hata spike'ları
Önerilen Ayarlar:
- Zaman Aralığı: Son 24 Saat
- Otomatik Yenileme: 5 Dakika
Senaryo 2: Haftalık Performans Analizi
Amaç: Haftalık trend analizi ve kapasite planlaması.
- Trafik arttı mı / azaldı mı?
- Hangi günler daha yoğun?
- Yanıt süreleri değişti mi?
- Backend performansı nasıl?
- Hangi API'ler en çok kullanılıyor?
- Optimizasyon ihtiyacı var mı?
- Mevcut kapasite yeterli mi?
- Scaling gerekli mi?
Önerilen Ayarlar:
- Zaman Aralığı: Son 7 Gün
- Karşılaştırma: Önceki hafta ile
Senaryo 3: İnsident Sonrası Analiz
Amaç: Bir problem yaşandıktan sonra kök neden analizi.
- Özel zaman aralığı seçin (incident zamanı)
- Spike veya anomali görülebiliyor mu?
- Hangi API'ler etkilendi?
- Hata tipi neydi?
- Backend problemi mi?
- Politika hatası mı?
- Trafik artışı mı?
- Problematik istekleri Tracing ile inceleyin
- Hangi adımda hata oluştu?
Önerilen Ayarlar:
- Zaman Aralığı: Özel (incident zamanı ±1 saat)
- Fokus: Hata metrikleri ve etkilenen endpoint'ler
En İyi Uygulamalar
- Günlük operasyonel kontroller
- Haftalık trend analizleri
- Aylık kapasite planlaması değerlendirmesi
- Normal performans metriklerini kaydedin
- Baseline'dan sapmaları izleyin
- Alarm threshold'ları belirleyin
- Gerçek zamanlı izleme için otomatik yenileme
- Uygun yenileme aralığı seçimi (1-5 dakika)
- Elasticsearch yükünü göz önünde bulundurun
- Her ortam için ayrı ayrı izleme
- Production'ı öncelikli takip edin
- Ortamlar arası karşılaştırma yapın
- Başarı oranı threshold'larını bilin
- Yanıt süresi beklentilerini belirleyin
- Anormal durumları hızla tespit edin
- Pano'dan problem tespit edin
- API Trafiği ile detaylı inceleyin
- Tracing ile kök neden bulun
Sınırlamalar ve Dikkat Edilmesi Gerekenler
Elasticsearch Konnektörü Gerekli:
- Pano metriklerinin görüntülenebilmesi için ortama Elasticsearch Konnektörü eklenmiş olmalıdır
- Birden fazla Elasticsearch Konnektörü varsa, ilk eklenen konnektörün verileri görüntülenir
Veri Güncellik Süresi:
- Metrikler Elasticsearch'teki verilerden oluşturulur
- Log kayıtlarının Elasticsearch'e ulaşması birkaç saniye sürebilir
- Gerçek zamanlı değil, near real-time (yakın gerçek zamanlı) veri gösterir
Performans İpuçları:
- Çok uzun zaman aralıkları (>30 gün) sorgu performansını etkileyebilir
- Gereksiz sık yenileme Elasticsearch yükünü artırır
- Filtreleme yaparak daha hızlı sonuçlar alabilirsiniz