Client Route Raporu
Bu ekrana Administration > Reports > Metrics sayfasındaki Conflicts sekmesinden ulaşabilirsiniz. Conflicts sekmesi yalnızca Administration menüsünde görünür; proje menüsündeki Metrikler sayfasında yer almaz.
Metrikler Sayfası
Conflicts sekmesinde iki alt-rapor bulunur:
Veritabanındaki yapılandırmanın statik analizi. Route'ların birbiriyle çakışıp çakışmadığını gösterir (dokümantasyonda Route Çakışmaları).
Çalışan worker pod'larına tarif ettiğiniz isteği sorar. Yapılandırmanın değil, gateway'in o anki davranışının kaydıdır.
Paylaşılan filtre satırındaki ortam ve proje seçimi Route Conflicts sorgusuna uygulanır; tarih aralığı bu raporlarda kullanılmaz. Conflicts sekmesi açıkken paylaşılan satırdaki Excel Export gizlenir — Route Conflicts kendi export düğmesini filtre satırında taşır; Route Trace'in Excel export'u yoktur.
Route Conflicts
Filtreleme
| Seçenek | Açıklama |
|---|---|
| Search by name | İsim, path veya host üzerinde metin araması (yazarken 300 ms debounce ile otomatik arama) |
| Type | API Proxy veya Proxy Group |
| Conflict Status | No Conflict, Exact Match, Prefix Conflict |
| Show conflicts only | Yalnızca çakışmalı route'ları listeler (varsayılan: işaretli) |
| Show deployed only | Yalnızca en az bir ortamda deploy edilmiş route'ları listeler |
| Clear Query / Search | Filtreleri sıfırlar veya manuel sorgu tetikler |
| Excel Export | Mevcut filtrelerle ZIP indirir (apinizer-route-conflict-report.zip) |
Metrikler embedded modunda ortam ve proje filtreleri paylaşılan üst satırdan gelir; alt-rapor satırında yalnızca yukarıdaki rapor özel filtreler görünür.
Tablo Sütunları
| Sütun | Açıklama |
|---|---|
| Project | Route'un ait olduğu proje |
| Type | API Proxy veya API Proxy Group |
| Name | API Proxy / Proxy Group adı |
| Paths | Tanımlı client route path'leri |
| Hosts | Tanımlı host'lar; yoksa - |
| Headers | name:value formatında header'lar; yoksa - |
| Methods | Desteklenen HTTP metotları; yoksa - |
| Deployments | Deploy edilen / toplam ortam sayısı (örn. 1/1) |
| Conflict Status | No Conflict, Exact Match veya Prefix Conflict |
| Actions | View Details — detay diyaloğu |
Project, Type ve Name sütunlarına göre sıralama yapılabilir. Sonuçlar sayfalanmaz; kaydırılabilir tabloda (en fazla ~600 px yükseklik) listelenir.
Detay Görüntüleme
View Details ile açılan diyalogda:
Proje, tip, isim, path, host, header, method ve çakışma durumu
Ortam adı, erişim URL'i, deploy durumu, redeploy required
Çakışan diğer route'lar: proje, tip, isim, path, neden
Çakışma Durumları
Başka bir route ile çakışma yoktur.
Path, host, header ve method yapılandırması başka bir route ile tam eşleşir — ciddi çakışma.
Path, başka bir route'un path öneki ile çakışır — potansiyel sorun.
Route Trace
Route Trace, tarif ettiğiniz bir isteğin hangi API Proxy'ye yönleneceğini çalışan her worker pod'una ayrı ayrı sorar.
Çakışma raporu veritabanındaki yapılandırmayı inceler; Route Trace ise worker'ın bellekteki route tablosuna bakar. İkisi ayrıldığında sorun yapılandırmada değil, worker belleğindedir.
Backend'e istek gönderilmez. Cevap pod'un bellekteki route tablosundan üretilir. Trafik logu, kota ve rate limit sayaçları etkilenmez; canlı ortamda güvenle çalıştırılabilir.
İsteğin Tarif Edilmesi
| Alan | Açıklama |
|---|---|
| HTTP Method | İstek metodu. Yapılandırma jokeri ALL listede yoktur |
| Path | İstenen adres; / ile başlamalıdır |
| Host | Host tabanlı route'lar için. Boş bırakılırsa host kriteri boş kabul edilir |
| Environments | Sorgulanacak ortamlar. Boş bırakılırsa yayınlanmış tüm ortamlar sorgulanır |
| Headers | Header tabanlı route'lar için ad/değer çiftleri; Add Header / Add Host Header |
| Body (SOAP) | Yalnızca SOAP proxy'lerinde gerekir; REST için boş bırakın |
Ek seçenekler:
- Include competing routes — eşleşmeyi kaybeden route'ları ve elenme nedenlerini listeler
- Run index consistency audit — worker bellekteki route index'ini tarar; maliyetli, eşleşme imkânsız göründüğünde açın
Clear Query filtreleri sıfırlar; Run Trace sorguyu çalıştırır. Sonuç JSON olarak panoya kopyalanabilir (header değerleri kopyaya dahil edilmez).
Sonucun Okunması
Sonuç, pod listesiyle değil pod'lar arası uzlaşı ile başlar:
Route tablosu pod'lar arasında tutarlı; sonucu yapılandırma belirler.
Aynı istek bazı pod'larda çözülür, bazılarında çözülmez — dışarıdan aralıklı 404.
Pod'lara göre farklı hedefler; bellekteki route tabloları ayrışmış.
Cevap veren pod'lar hemfikir; en az bir pod'a ulaşılamadı.
Uzlaşı bandının altında aynı cevabı veren pod'lar tek kartta toplanır; pod tablosu kanıt olarak en altta yer alır. Satır açıldığında:
- How the request was read — path yorumu ve root context çıkarımı
- Competing routes — host/header/URI/method kural sonuçları ve elenme nedenleri
- Index findings — denetim açıksa index tutarsızlıkları
- Group members — eşleşme Proxy Group üzerinden geldiyse değerlendirme sırası
Bir pod'un hata vermesi raporun tamamının başarısız olduğu anlamına gelmez; kaç pod'un cevap verdiği üst bantta yazar.
Matched but not reached ile listelenen rakip route, worker bellekteki index sorununa işaret eder. Index denetimi bulguları da yapılandırmadan çok çalışan worker durumuyla ilgilidir; gerekirse worker yeniden başlatılmalıdır.