Ana içeriğe geç

API Trafiği

API Trafiği ekranında projedeki tüm API Proxy'lere gelen istek ve yanıtlar detaylarıyla birlikte listelenir. Bu ekran özellikle mesajdaki bir sorunu araştırmayı kolaylaştırır.

API Trafiği Ekranı
bilgi

Bir API Proxy birden fazla Ortam'a yüklenebileceği için metrikler, ortam bazlı sorgulanır. Tüm analitik ekranlarında öncelikle Ortam bilgisi seçilerek metrikler filtrelenir.

Özellikler

Tüm API Proxy Trafiği

Projedeki tüm API Proxy'lerin trafiğini tek bir ekranda görüntüleyebilirsiniz

Gelişmiş Filtreleme

Basit ve gelişmiş filtreleme seçenekleri ile istediğiniz kayıtlara ulaşabilirsiniz

Detaylı İnceleme

Her isteğin mesaj akışını bölümlere göre detaylı olarak inceleyebilirsiniz

Yönlendirme Takibi

İsteklerin hangi adreslere nasıl yönlendirildiğini takip edebilirsiniz

JSON Formatı

Log kayıtlarını JSON formatında görüntüleyebilir ve indirebilirsiniz

Hızlı Test

İstekleri Test Konsola aktararak hızlıca yeniden test edebilirsiniz

Yönlendirme Adresi (Routing Address)

Bu alan ilgili API Proxy'nin yönlendirildiği adres bilgisini tutar. Bu alan eğer boş ise, isteğin backend adresine gitmediğini ifade eder.

Backend olarak Apinizer'ı kullanan servisler apinizer:// ön eki ile gösterilir, tam olarak apinizer://<BİLEŞEN_ADI>/<METOT_ADI> formatında yazılır.

bilgi

Routing adresi kapatılarak backend'e gitmesi engellenen proxy'ler için de bu gösterim geçerlidir.

Yönlendirme Adresi Değerleri

Routing AdresiKoşul
apinizer://mirror.routing/<METOT_ADI>API Proxy tipi Swagger 2.x, OpenAPI/Swagger 3.0.x, WSDL, Reverse Proxy veya No-Spec API ve Routing seçeneği kapatılmış ve Mirror seçeneği açık
apinizer://specresponse.routing/<METOT_ADI>API Proxy tipi Swagger 2.x, OpenAPI/Swagger 3.0.x, WSDL, Reverse Proxy veya No-Spec API ve Routing seçeneği kapatılmış ve Mirror seçeneği kapalı
apinizer://db2api.apicreator/<METOT_ADI>API Proxy tipi DB2API
apinizer://script2api.apicreator/<METOT_ADI>API Proxy tipi Script2API
apinizer://mockapi.apicreator/<METOT_ADI>API Proxy tipi Mock API
apinizer://connector/<METOT_ADI>API Proxy tipi Connector
apinizer://maintenanceAPI Proxy bakım modunda
apinizer://cache/<METOT_ADI>Herhangi bir API Proxy tipinde ve Cache'leme açık
http://<BACKEND_ADRESİ>/<METOT_ADI>
https://<BACKEND_ADRESİ>/<METOT_ADI>
API Proxy tipi Swagger 2.x, OpenAPI/Swagger 3.0.x, WSDL, Reverse Proxy, No-Spec API veya KPS ve Routing seçeneği açık
apinizer://specAPI Proxy tipi Swagger 2.x, OpenAPI/Swagger 3.0.x, WSDL, Reverse Proxy, No-Spec API ve spec adresine erişim
(Boş)İsteğin çeşitli sebeplerle backend adresine gidememesi
uyarı

Websocket ve gRPC istekleri Apinizer'a gelen ve Apinizer'dan çıkan veriler şeklinde tutulmakta olduğundan bu tip API Proxylerde sadece 2 bölge vardır.

API Tipi

Bu ekran projedeki tüm API Proxy'lerin trafiğini listelediği için farklı proxy tiplerine ait kayıtlar yan yana görünür. API Tipi kolonu her kaydın hangi tipe ait olduğunu gösterir; aynı değerler Basit Filtreleme altında filtre olarak da seçilebilir.

Değerler: SOAP, REST, GRPC, WEBSOCKET, MCP, A2A

Kolon sıralanabilir; aynı tipe ait kayıtlar bir arada gruplanabilir.

bilgi

API Tipi kolonu ve filtresi yalnızca bu ekranda gösterilir. Tek bir API Proxy'nin Trafik sekmesinde tip zaten sabittir, AI Gateway trafik ekranlarında ise kayıtlar AI ailesiyle sınırlıdır — her iki durumda da aynı değeri her satırda tekrar etmek yalnızca gürültü olur.

bilgi

Tip seçenekleri arasında AI yer almaz. AI Gateway trafiği bu ekranın dışında bırakılmıştır ve yalnızca AI Gateway'in kendi trafik ve analitik ekranlarında listelenir; dolayısıyla burada AI seçmek her zaman sıfır kayıt döndürürdü.

uyarı

WebSocket ve gRPC kayıtlarında İstek Pipeline, Backend ve Yanıt Pipeline süre kolonları olarak gösterilir. Bu protokoller Apinizer'a gelen ve Apinizer'dan çıkan veri şeklinde loglandığı için üç aşamalı pipeline süresi ölçülmez.

Filtreleme

Daha fazla filtre (More options) seçeneği ile 2 farklı tipte filtreleme yapılabilir:

Kayıtlara, belirli bir zaman aralığı, uç nokta (endpoint) ya da HTTP metodu gibi belirlenmiş kriterler ile filtre uygulanabilir.

Basit Filtreleme

Filtreleme Kriterleri:

  • Tarih Aralığı: Başlangıç ve bitiş tarihi seçimi
  • API Proxy: Belirli API Proxy'ler için filtreleme
  • API Tipi: Proxy tipine göre filtreleme — SOAP, REST, gRPC, WebSocket, MCP, A2A (bkz. API Tipi)
  • Endpoint/Method: Belirli endpoint veya metod için filtreleme
  • HTTP Metod: GET, POST, PUT, DELETE, vb.
  • Durum Kodu: 200, 404, 500 gibi HTTP durum kodları
  • Sonuç Tipi: Başarılı, Başarısız, Bloklanmış

Sorgu Tipleri

Filtreleme yapılan alanlara 2 tip sorgu uygulanmaktadır:

Term Query

Aranan değer (keyword) ile loglanan verinin tam olarak eşleştiği loglar döndürülür.

Bu sorgunun uygulandığı alanlar:

  • API Proxy
  • İşlem Sonuç Tipi (Result Type)
  • HTTP Durum Kodu (HTTP Status Code)
  • HTTP Metot (HTTP Method)
  • Kullanıcı Adı ya da Anahtar Kelime (Username or Key)
  • Correlation ID
Match Query

Tüm metin üzerinde arama yapma sorgusudur. Aranan değer, arama yapılmadan önce analiz edilir.

Analiz Süreci:

  1. Metin dilbilgisi kuralları üzerinden parçalara ayırılır (numara, noktalama işaretleri, vb.)
  2. Parçalar 'Lower Case Token Filter' aşamasından geçerek küçük harflere dönüştürülür
  3. Örnek: 'The 2 QUICK Brown-Foxes jumped over the lazy dog's bone.'[ the, 2, quick, brown, foxes, jumped, over, the, lazy, dog's, bone ]

Eşleşme Mantığı:

  • Parçaların arasında OR operatörü vardır
  • Parçalar log dokümanındaki alanda kaç tanesi var, ne sıklıkla kullanılmış gibi kriterler baz alınarak skor değeri elde edilir
  • Bu skor değerine göre ilgili dokümanlar döndürülür

Bu sorgunun uygulandığı alanlar:

  • Metot/Endpoint Adı (Method/Endpoint Name)
  • İstek Adresi (Request Address)
  • Gönderilen Adres (Routing Address)
  • İstemciden Alınan İsteğin Gövdesi (From Client Body)
  • İstemciye Gönderilen Yanıtın Gövdesi (To Client Body)
Wildcard Query

Bir wildcard karakter kalıbıyla eşleşen terimleri içeren dokümanlar döndürülür.

Kullanım:

  • Arama sonuçlarınızı genişletmek için kelimenin önüne ya da sonuna * karakteri eklenmelidir
  • Örnek: user* → user ile başlayan tüm kelimeler
  • Örnek: *admin → admin ile biten tüm kelimeler

Bu sorgunun uygulandığı alanlar:

  • İstek Adresi (Request Address)
  • Gönderilen Adres (Routing Address)
Gövde Alanlarında Arama (Body Search)

From Client Body, To Backend API Body, From Backend API Body ve To Client Body alanlarında arama yapılırken aşağıdaki kurallar geçerlidir:

Tek kelime arama:

  • doğum gibi boşluk içermeyen ifadeler wildcard substring arama olarak çalışır — ilgili kelimenin geçtiği tüm kayıtlar döndürülür.

Boşluklu ifade arama:

  • doğum tarihi gibi boşluk içeren ifadeler, kelimelerin yan yana geçtiği kayıtlar için arama yapar — phrase arama davranışı gösterir.
  • Yıldız karakteri eklenerek de kullanılabilir: *doğum tarihi*
ipucu

En doğru sonuçlar için aranan metnin tam yazımını kullanın. Büyük/küçük harf duyarlılığı konusunda sonuçlar değişkenlik gösterebileceğinden tam yazımı tercih edin.

Detaylı Görünüm (Detailed View)

Log kaydın sağ tarafında yer alan Detaylı Görünüm (Detailed View) tuşuna basıldığında mesajın log bilgileri, istek ve yanıt hattındaki bölümlere göre gruplanarak gelir.

Detaylı Görünüm Dialog

Mesaj Bölgeleri

Log kaydı aşağıdaki bölgelere göre gruplandırılmıştır:

Genel Bakış (Overview)

İsteğin özet bilgileri, durum kodu, toplam süre ve genel metrikler

İstemciden API Proxy'e Gelen İstek
  • Request Headers
  • Request Parameters
  • Request Body
  • Client IP ve metadata
API Proxy'den Backend'e Giden İstek
  • Backend URL ve yönlendirme bilgileri
  • Gönderilen Headers
  • Gönderilen Body
  • Routing detayları
Backend'den API Proxy'e Gelen Yanıt
  • Response Status Code
  • Response Headers
  • Response Body
  • Backend yanıt süresi
API Proxy'den İstemciye Giden Yanıt
  • İstemciye dönen Headers
  • İstemciye dönen Body
  • Toplam işlem süresi
bilgi

Varsayılan olarak Genel Bakış bölümü açık gelir. İncelenmek istenen bölümün adına tıklandığında o alana ilişkin log kayıtları görüntülenir.

Tipe Özel Detaylar

API Tipi MCP veya A2A olan kayıtlarda Genel Bakış bölümünde ayrıca Gateway'in kaydettiği protokol alanları yer alır. Bu bölümler yalnızca ilgili tipte gösterilir; diğer tiplerde hiç görünmez.

AlanAçıklama
Araç Adıİsteğin hedeflediği MCP aracının (tool) adı
JSON-RPC IDJSON-RPC zarfının id değeri — isteğin yanıtıyla eşleştirilmesinde kullanılır
bilgi

İstek bu alanları taşımıyorsa (örneğin araç çağrısı değil, protokol seviyesinde bir initialize çağrısıysa) bölüm boş alanlar göstermek yerine tipe özel veri kaydedilmediğini belirtir.

Yönlendirme Teşhisi (Routing Diagnostics)

Backend'e giden bir istekte yönlendirme ile ilgili teşhis sinyalleri varsa, Detaylı Görünüm penceresinde Yönlendirme Teşhisi bölümü görüntülenir.

bilgi

Bu bölüm yalnızca backend'e giden istekler için görüntülenir; önbellekten dönen veya backend'e hiç gitmeyen (mock, bakım modu vb.) isteklerde bu bölüm görünmez.

Detaylı Görüntüleme penceresinde Yönlendirme Teşhisi bölümü
AlanAçıklama
Hata Nedeniİstek başarısız olduysa hatanın sınıflandırılmış nedeni (Havuz Zaman Aşımı, Bağlanma Zaman Aşımı, DNS Hatası, TLS El Sıkışma Hatası, Okuma Zaman Aşımı, Backend/İstemci Bağlantıyı Kapattı, Sağlıklı Upstream Yok, Devre Açık, Tüm Denemeler Tükendi, Upstream HTTP Hatası, Bilinmiyor)
Güven DüzeyiSınıflandırmanın güvenilirlik seviyesi (Yüksek/Orta/Düşük)
Olası SebepHata nedenine göre otomatik oluşturulan açıklama metni
İstisna (Exception)Varsa, hatayı oluşturan istisna sınıfı ve detayı
Önerilen AksiyonMevcut sinyallere göre üretilen, sorunu gidermeye yönelik öneri metni
Faz SüreleriSeçim, DNS, TCP bağlanma, TLS el sıkışma, ilk yanıt baytı (TTFB), gövde okuma ve havuzdan bağlantı bekleme sürelerinin her biri (ms)
Backend Ham Durum KoduBackend'in döndürdüğü ham HTTP durum kodu (istemciye dönen koddan farklı olabilir, örneğin bir politika kodu değiştirmişse)
Upstream IP:Portİsteğin gerçekte gönderildiği backend adresi
Bağlantı Yeniden KullanıldıBağlantının havuzdan yeniden kullanılıp kullanılmadığı
Yanıta Ulaşıldı (TTFB)Backend'den yanıtın en az bir baytının alınıp alınmadığı
Gateway Workerİsteği işleyen Worker pod/host bilgisi
İstemciye Yazma (ms)Yanıtın istemciye yazılması için geçen süre
HavuzBağlantı havuzunun anlık durumu: kiralanan, bekleyen, kullanılabilir ve azami bağlantı sayısı
Yapılandırılmış Zaman Aşımlarıİlgili API Proxy için yapılandırılmış bağlanma, okuma ve havuzdan bağlantı bekleme zaman aşımı değerleri (ms)
ipucu

Bu API Proxy'nin toplu yönlendirme teşhis özeti (hata nedeni dağılımı, faz gecikmesi p50/p95/p99 vb.) için API Trafiği Sekmesi sayfasına bakabilirsiniz.

JSON Görünüm

Kaydın sağ tarafında yer alan JSON Görünüm tuşuna basıldığında log kaydın JSON hali ekrana gelir.

JSON Görünüm Dialog
bilgi

Bu alandaki anahtar değerler okumayı kolaylaştırmak amacıyla log dosyasında olduğu şekilde değil okunabilir şekilde yazılmıştır.

Örneğin:

  • "apiProxyId" değeri log kaydında "api" şeklinde tutulmaktadır
  • Log kaydı indirildiğinde esas tutulan log kaydı görüntülenecektir

Gerçek log dosyası formatı için API Trafiği Log Kaydı Veri Yapısı sayfasındaki "Template Veri Yapısı Tablosu"nu inceleyebilirsiniz.

uyarı

Eğer log kaydının veri büyüklüğü 500KB'den büyükse Detaylı Göster ve JSON Formatında Görüntüle seçenekleri kapalı hale gelir. Bu durumda log kaydını incelemek için indirilmelidir.

Log Kaydı İndirme

Kaydın sağ tarafında yer alan İndir tuşuna basıldığında kaydın JSON hali .zip formatında indirilir.

İndirme Seçenekleri:

  • Tek Kayıt: Seçili kaydı indirir
  • Tüm Sonuçlar: Filtrelenmiş tüm kayıtları indirir
ipucu

İndirilen log dosyaları, detaylı analiz yapmak veya dış araçlarla işlemek için kullanılabilir.

Excel'e Aktarma

Ekranın sağ üstündeki Excel tuşu ile o anki sorgunun sonucu hesap tablosu olarak dışarı aktarılır. Aktarım yalnızca görünen sayfadaki kayıtları değil, listedeki filtrelerin tamamını kullanır.

Aktarılan kolonlar, sırasıyla: HTTP Status Code, Created, HTTP Method, HTTP Request Server Name, HTTP Request Server Port, API Proxy, API Proxy Method, Request Address, Username or Key, Routing Address, API Proxy Request Pipeline Time (ms), Backend Routing Time (ms), API Proxy Response Pipeline Time (ms), Total Time (ms), Request Size (byte), Response Size (byte), API Type. (Kolon başlıkları dosyada İngilizcedir.)

bilgi

API Tipi en son kolondur. Diğer kolonların ardına bilinçli olarak eklenmiştir: mevcut kolonların sırası değişmez, böylece dışarıdan bir araçla işlenen aktarımlar etkilenmez.

Hızlı Test

Kaydın sağ tarafında yer alan Hızlı Test tuşuna basıldığında kayda gelen orijinal mesaj içeriği Test Konsola yerleştirilmiş şekilde Test Konsol ekranı açılır.

Bu özellik, ilgili kaydın tekrar test edilebilmesi için kolaylık sağlar.

uyarı

Hızlı Test tuşunun görünmesi için genel ayarlarda etkinleştirilmelidir.

İlgili Kaynaklar