Cloud-native API Gateway, erişim günlüklerini analiz amacıyla Simple Log Service (SLS) hizmetine iletebilir. Bu sayede istemci davranışlarını anlayabilir, coğrafi dağılımı belirleyebilir ve sorunları giderebilirsiniz.
Ön koşullar
Bir cloud-native ağ geçidi örneği oluşturulmuş olmalıdır. Ağ geçidi örneği oluşturma.
Simple Log Service hizmeti etkinleştirilmiş olmalıdır. Değilse, hizmeti etkinleştirmek için Simple Log Service konsoluna şuraya gidin. Daha fazla bilgi için bkz. Simple Log Service nedir?.
Günlük teslimini etkinleştirin
Cloud-native API Gateway günlük teslimi için ücret almaz; ancak SLS, Kullandıkça öde modeli kapsamında kullanımınıza göre ücretlendirme uygular.
API Gateway konsolu üzerinde oturum açın.
Sol gezinme bölmesinde seçeneğini tıklayın. Üst gezinme çubuğunda bir bölge seçin.
Instance sayfasında örnek adını veya kimliğini tıklayın.
Sol gezinme bölmesinde Parameters öğesini tıklayın.
-
Observability Parameters bölümünde, Access Log Shipping Settings yanındaki
simgesini tıklayın. Access Log Shipping Settings panelinde Instance Access Logs (AccessLog) seçeneğini etkinleştirin.NotSLS,
aliyun-product-data-{Alibaba Cloud account UID}-{Region}adlı varsayılan bir proje oluşturur; örneğin:aliyun-product-data-1069xxxxx28319-cn-shanghai. Mevcut bir projeyi de seçebilirsiniz.Günlükleri görüntülemek için, ağ geçidi Logstore'unu açmak üzere Observability Parameters bölümündeki Project yanındaki bağlantıyı tıklayın. Sorgu ve analize hızlı başlangıç.
Günlük alanları
Aşağıdaki tabloda ağ geçidi erişim günlüğündeki alanlar açıklanmaktadır.
|
Alan |
Tür |
Açıklama |
|
__time__ |
long |
Günlüğün oluşturulduğu zaman. |
|
cluster_id |
string |
AI Gateway örneğinin kimliği. |
|
ai_log |
json |
Model API, Agent API ve MCP API için günlük alanlarını içeren bir JSON nesnesi. Diğer API türleri için bu alan boştur.
|
|
authority |
string |
İstekteki Host üst bilgisinin değeri. |
|
bytes_received |
long |
Üst bilgi hariç, istek gövdesinin bayt cinsinden boyutu. |
|
bytes_sent |
long |
Üst bilgi hariç, yanıt gövdesinin bayt cinsinden boyutu. |
|
downstream_local_address |
string |
Ağ geçidi pod'unun adresi. |
|
downstream_remote_address |
string |
Ağ geçidine bağlanan istemcinin adresi. |
|
duration |
long |
Ağ geçidinin istemciden ilk baytı almasından yanıtın son baytını göndermesine kadar ölçülen toplam istek işleme süresi (milisaniye cinsinden). |
|
method |
string |
HTTP yöntemi. |
|
path |
string |
HTTP isteğindeki yol. |
|
protocol |
string |
HTTP protokolü sürümü. |
|
request_duration |
long |
Ağ geçidinin istemciden isteğin ilk baytını almasından son baytı almasına kadar geçen süre (milisaniye cinsinden). |
|
request_id |
string |
Ağ geçidinin her istek için oluşturduğu benzersiz kimlik. Bu kimlik, |
|
requested_server_name |
string |
SSL bağlantısı için kullanılan sunucu adı. |
|
response_code_details |
string |
Yanıt kodu için ek bağlam. Örneğin, |
|
response_tx_duration |
long |
Ağ geçidinin yukarı akış hizmetinden ilk baytı almasından istemciye son baytı göndermesine kadar geçen süre (milisaniye cinsinden). |
|
route_name |
string |
Rota adı. |
|
start_time |
string |
İsteğin başlangıç zamanı. Zaman UTC cinsindendir. |
|
trace_id |
string |
İzleme kimliği. |
|
upstream_cluster |
string |
Yukarı akış kümesi. |
|
upstream_host |
string |
Yukarı akış ana bilgisayarının IP adresi. |
|
upstream_local_address |
string |
Yukarı akış hizmetine bağlanmak için kullanılan yerel adres. |
|
upstream_service_time |
long |
Yukarı akış hizmeti için istek işleme süresi (milisaniye cinsinden). Bu süre, ağ gecikme süresini ve hizmetin kendi işleme süresini kapsar. |
|
upstream_transport_failure_reason |
string |
Yukarı akış bağlantı hatasının nedeni. |
|
user_agent |
string |
İstekteki User-Agent üst bilgisinin değeri. |
|
x_forwarded_for |
string |
Genellikle istemcinin gerçek IP adresini içeren |
İstek hata nedenleri
Günlükteki Response_Flag değeri, bir isteğin neden başarısız olduğunu gösterir. Olası Response_Flag değerleri:
Downstream (aşağı akış) istemciyi, upstream (yukarı akış) ise arka uç hizmetini ifade eder.
UH: Yukarı akış kümesinde kullanılabilir sağlıklı bir yukarı akış ana bilgisayarı yok.
UF: Yukarı akış hizmetine bağlantı başarısız oldu.
NR: İstek için yapılandırılmış bir rota yok.
URX: HTTP için yukarı akış yeniden deneme sınırı veya TCP için maksimum bağlantı denemesi aşıldığından istek reddedildi.
NC: Yukarı akış kümesi bulunamadı.
DT: İstek veya bağlantı
max_connection_durationveyamax_downstream_connection_durationdeğerini aştı.DC: Aşağı akış bağlantısı sonlandırıldı.
LH: Yerel hizmet, durum denetimi isteğini başarısız olarak işaretledi.
UT: Yukarı akış isteği zaman aşımına uğradı.
LR: Bağlantı yerel olarak sıfırlandı.
UR: Yukarı akış bağlantısı uzaktan sıfırlandı.
UC: Yukarı akış bağlantısı sonlandırıldı.
DI: İstek, hata enjeksiyonu nedeniyle belirtilen bir süre boyunca geciktirildi.
FI: İstek, hata enjeksiyonu nedeniyle bir yanıt koduyla iptal edildi.
RL: İstek, yerel HTTP hız sınırı filtresi tarafından hız sınırlamasına tabi tutuldu. Bu durum, 429 yanıt kodu alan istekleri kapsamaz.
UAEX: İstek, harici bir yetkilendirme hizmeti tarafından reddedildi.
RLSE: Hız sınırı hizmetinde bir hata oluştuğu için istek reddedildi.
IH: Sıkı denetlenen bir üst bilgi geçersiz bir değer içerdiği için istek reddedildi.
SI: Akış boşta kalma zaman aşımı sınırına ulaşıldı.
DPE: Aşağı akış isteği bir HTTP protokolü hatası içeriyordu.
UPE: Yukarı akış yanıtı bir HTTP protokolü hatası içeriyordu.
UMSDR: Yukarı akış isteği maksimum akış süresine ulaştı.
OM: Aşırı yük yöneticisi isteği sonlandırdı.