Ana içeriğe atla
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ı
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.
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
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.

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 FiltrelemeFiltreleme Kriterleri:
  • Tarih Aralığı: Başlangıç ve bitiş tarihi seçimi
  • API Proxy: Belirli API Proxy’ler için filtreleme
  • 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:
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
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)
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)

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:
1

Genel Bakış (Overview)

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

İstemciden API Proxy'e Gelen İstek

  • Request Headers
  • Request Parameters
  • Request Body
  • Client IP ve metadata
3

API Proxy'den Backend'e Giden İstek

  • Backend URL ve yönlendirme bilgileri
  • Gönderilen Headers
  • Gönderilen Body
  • Routing detayları
4

Backend'den API Proxy'e Gelen Yanıt

  • Response Status Code
  • Response Headers
  • Response Body
  • Backend yanıt süresi
5

API Proxy'den İstemciye Giden Yanıt

  • İstemciye dönen Headers
  • İstemciye dönen Body
  • Toplam işlem süresi
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.

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
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.
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
İndirilen log dosyaları, detaylı analiz yapmak veya dış araçlarla işlemek için kullanılabilir.

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.
Hızlı Test tuşunun görünmesi için genel ayarlarda etkinleştirilmelidir.

İlgili Kaynaklar