AI Gateway terintegrasi dengan Alibaba Cloud Simple Log Service (SLS) untuk menyediakan log shipping. Anda dapat menganalisis access log dari instans AI Gateway guna memahami perilaku pengguna, memantau distribusi geografis, dan melakukan troubleshooting masalah.
Prasyarat
-
Anda telah mengaktifkan Simple Log Service (SLS). Jika belum, login ke Konsol SLS untuk mengaktifkannya.
Aktifkan log shipping
Fitur log shipping pada AI Gateway tidak dikenai biaya, tetapi penggunaan Simple Log Service (SLS) dikenai tagihan. Untuk informasi lebih lanjut mengenai penagihan SLS, lihat pay-as-you-go.
Login ke Konsol AI Gateway dan pilih Instance. Di bilah menu atas, pilih wilayah, lalu klik ID instans target.
-
AI Gateway menyediakan dua metode untuk mengaktifkan log shipping:
Metode 1: Log Center
-
Di panel navigasi sebelah kiri, pilih .
-
Klik Enable Log Shipping. Di kotak dialog Enable Log Shipping, pilih Use Default atau Use Existing untuk menentukan proyek SLS, lalu klik OK.
Metode 2: Parameters
-
Di panel navigasi sebelah kiri, klik Parameters.
-
Di bagian Observability Parameters, klik ikon edit (
) di samping Access Log Shipping Settings. Di kotak dialog Access Log Shipping Settings, aktifkan Instance Access Logs (AccessLog). -
Aktifkan The output logs are compatible with the NGINX Ingress format.. Opsi ini memformat log agar sesuai dengan format NGINX Ingress, yang menyederhanakan analisis terpadu dan meningkatkan kompatibilitas lintas sistem.
-
Pilih Use Default atau Use Existing untuk menentukan proyek SLS, lalu klik OK.
CatatanJika Anda memilih Use Default, Simple Log Service akan membuat proyek SLS default untuk Anda.
Proyek SLS default mengikuti format penamaan:
aliyun-product-data-{UID}-{Region}. Contoh:-
Situs Tiongkok:
aliyun-product-data-1069xxxxx28319-cn-shanghai -
Situs internasional:
aliyun-product-data-1069xxxxx28319-ap-southeast-1
Di mana:
-
aliyun-product-dataadalah awalan tetap. -
{UID}adalah UID akun utama Alibaba Cloud Anda (string numerik). -
{Region}adalah ID wilayah instans Anda, menggunakan ID wilayah internasional sepertiap-southeast-1atauus-east-1.
Format penamaan ini juga berlaku ketika Anda memilih Use Default untuk proyek SLS di Metode 1: Log Center.
Setelah mengaktifkan log shipping, di bagian Observability Parameters, klik tautan di samping Project. Mengklik tautan tersebut akan mengarahkan Anda ke Logstore gateway. Untuk informasi lebih lanjut, lihat Quick start for query and analysis.
-
Field log
Tabel berikut menjelaskan field dalam access log gateway.
|
Field |
Type |
Description |
|
__time__ |
long |
Waktu saat log dihasilkan. |
|
cluster_id |
string |
ID instans AI Gateway. |
|
ai_log |
json |
Objek JSON yang berisi field log untuk Model API, Agent API, dan MCP API. Field ini kosong untuk jenis API lainnya.
|
|
authority |
string |
Nilai header Host dalam permintaan. |
|
bytes_received |
long |
Ukuran body permintaan dalam byte, tidak termasuk header. |
|
bytes_sent |
long |
Ukuran body respons dalam byte, tidak termasuk header. |
|
downstream_local_address |
string |
Alamat pod gateway. |
|
downstream_remote_address |
string |
Alamat client yang terhubung ke gateway. |
|
duration |
long |
Total waktu pemrosesan permintaan dalam milidetik, diukur sejak gateway menerima byte pertama dari client hingga mengirim byte terakhir respons. |
|
method |
string |
Metode HTTP. |
|
path |
string |
Path dalam permintaan HTTP. |
|
protocol |
string |
Versi protokol HTTP. |
|
request_duration |
long |
Waktu dalam milidetik sejak gateway menerima byte pertama permintaan dari client hingga menerima byte terakhir. |
|
request_id |
string |
ID unik yang dihasilkan gateway untuk setiap permintaan. ID ini disertakan dalam header |
|
requested_server_name |
string |
Nama server yang digunakan untuk koneksi SSL. |
|
response_code_details |
string |
Konteks tambahan untuk kode respons. Misalnya, |
|
response_tx_duration |
long |
Waktu dalam milidetik sejak gateway menerima byte pertama dari layanan upstream hingga mengirim byte terakhir ke client. |
|
route_name |
string |
Nama rute. |
|
start_time |
string |
Waktu mulai permintaan. Waktu dalam UTC. |
|
trace_id |
string |
ID jejak. |
|
upstream_cluster |
string |
Kluster upstream. |
|
upstream_host |
string |
Alamat IP host upstream. |
|
upstream_local_address |
string |
Alamat lokal yang digunakan untuk terhubung ke layanan upstream. |
|
upstream_service_time |
long |
Waktu pemrosesan permintaan dalam milidetik untuk layanan upstream. Durasi ini mencakup latensi jaringan dan waktu pemrosesan layanan itu sendiri. |
|
upstream_transport_failure_reason |
string |
Alasan kegagalan koneksi upstream. |
|
user_agent |
string |
Nilai header User-Agent dalam permintaan. |
|
x_forwarded_for |
string |
Nilai header |
Response flags
Field response_flag dalam log menunjukkan penyebab kegagalan permintaan. Bagian ini menjelaskan nilai-nilai yang mungkin muncul pada field response_flag.
Downstream mengacu pada klien, dan upstream mengacu pada layanan backend.
-
UH: Tidak ada host sehat di kluster upstream.
-
UF: Koneksi upstream gagal.
-
NR: Tidak ada rute yang dikonfigurasi untuk permintaan tersebut.
-
URX: Permintaan ditolak karena batas retry upstream (HTTP) atau jumlah maksimum upaya koneksi (TCP) telah tercapai.
-
NC: Kluster upstream tidak ditemukan. Jika terjadi
cluster_not_found, lakukan troubleshooting sebagai berikut:-
Verifikasi bahwa penyedia model dan alamat layanan backend dalam layanan AI yang terkait dengan rute telah dikonfigurasi dengan benar dan tersedia.
-
Verifikasi bahwa layanan AI telah diikat ke instans gateway dan layanan backend lolos pemeriksaan kesehatan.
-
Verifikasi bahwa VPC gateway dapat menjangkau alamat layanan backend. Jika backend menggunakan nama domain publik, konfigurasikan NAT Gateway dan entri SNAT di VPC.
-
Verifikasi bahwa perubahan konfigurasi telah dipublikasikan dan berlaku.
-
-
DT: Permintaan atau koneksi melebihi batas
max_connection_durationataumax_downstream_connection_duration. -
DC: Koneksi downstream dihentikan.
-
LH: Layanan lokal gagal dalam pemeriksaan kesehatan.
-
UT: Permintaan upstream timeout.
-
LR: Koneksi di-reset secara lokal.
-
UR: Koneksi upstream di-reset dari sisi remote.
-
UC: Koneksi upstream dihentikan.
-
DI: Pemrosesan permintaan tertunda oleh fault injection.
-
FI: Permintaan dibatalkan dengan kode respons yang ditentukan oleh fault injection.
-
RL: Permintaan dibatasi lajunya secara lokal oleh filter pembatasan laju HTTP, tetapi respons 429 tidak dikembalikan.
-
UAEX: Permintaan ditolak oleh layanan otorisasi eksternal.
-
RLSE: Permintaan ditolak karena layanan pembatasan laju mengembalikan error.
-
IH: Permintaan ditolak karena header yang diperiksa secara ketat berisi nilai yang tidak valid.
-
SI: Timeout idle stream.
-
DPE: Terjadi error protokol HTTP dalam permintaan downstream.
-
UPE: Terjadi error protokol HTTP dalam respons upstream.
-
UMSDR: Permintaan upstream mencapai durasi stream maksimum.
-
OM: Manajer overload menghentikan permintaan.