Ketika Pendengar Lapisan 7 Classic Load Balancer (CLB) mengembalikan error, log akses memungkinkan Anda mengidentifikasi server backend yang menyebabkan masalah tersebut. CLB terintegrasi dengan Simple Log Service (SLS) untuk menyimpan, melakukan kueri, dan memvisualisasikan log ini.
Hanya pendengar HTTP dan HTTPS yang mendukung log akses. Pendengar Lapisan 4 tidak didukung.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Instans CLB. Lihat Create and manage CLB instances
Kelompok vServer dengan server backend yang telah ditambahkan dan aplikasi yang telah dideploy. Lihat Create and manage a vServer group
Pendengar HTTP atau HTTPS pada instans CLB. Lihat Add an HTTP listener dan Add an HTTPS listener
Simple Log Service diaktifkan. Lihat Activate Simple Log Service
Langkah 1: Konfigurasikan log akses
Login ke Konsol CLB.
Login ke Konsol CLB.
Di panel navigasi kiri, pilih .
Di bilah navigasi atas, pilih wilayah tempat instans CLB Anda dideploy.
Jika ini pertama kalinya Anda menggunakan log akses, berikan izin yang diperlukan. Klik Authorize, lalu pada halaman RAM Quick Authorization klik lagi Agree to Authorization.
CatatanOtorisasi hanya dilakukan satu kali. Jika Anda menggunakan Pengguna Resource Access Management (RAM), pemilik akun harus memberikan otorisasi secara terpisah kepada Pengguna RAM tersebut. Lihat Authorize a RAM user to use the access log feature of CLB.
Pada halaman Access Log (Layer 7), temukan instans CLB Anda dan klik Configure di kolom Actions.
Pada panel Log Settings, atur parameter Project dan Logstore, lalu klik OK.
Parameter
Description
Project
Proyek SLS mengisolasi dan mengelola sumber daya. Pilih proyek yang sudah ada dari daftar drop-down, atau masukkan nama untuk membuat proyek baru. Nama proyek harus unik, dan wilayahnya harus sesuai dengan wilayah instans CLB.
Logstore
Logstore SLS mengumpulkan, menyimpan, dan melakukan kueri terhadap log. Pilih Logstore yang sudah ada dari daftar drop-down, atau masukkan nama untuk membuat Logstore baru.
Langkah 2: Lihat data log akses
Login ke Konsol CLB.
Di panel navigasi kiri, pilih .
Di bilah navigasi atas, pilih wilayah tempat instans CLB Anda dideploy.
Temukan instans CLB Anda dan klik View Logs di kolom Actions untuk membuka Konsol SLS.
Entri log dibuat setiap kali klien mengakses CLB. Anda dapat melihat data log di Simple Log Service.
Masukkan pernyataan SQL untuk melakukan kueri terhadap data log. Misalnya, Anda dapat menjalankan pernyataan SQL berikut untuk mencari 20 klien paling aktif. Anda dapat menganalisis sumber permintaan dan mengambil keputusan bisnis yang tepat.
* | select http_user_agent, count(*) as pv group by http_user_agent order by pv desc limit 20
Langkah 3: Temukan server backend yang tidak sehat
Gunakan Dasbor SLS untuk mendapatkan ringkasan visual mengenai waktu respons server backend.
Pada halaman proyek, arahkan kursor ke ikon
di panel navigasi kiri dan klik Dashboards.Klik nama dasbor log akses, misalnya slb_layer7_access_center_en.
Di bagian top upstream_response_time, urutkan kolom avg upstream_response_time(s) secara menurun.
Jika waktu respons rata-rata server backend melebihi 1 detik, login ke server tersebut untuk menyelidiki akar permasalahannya.
Pemecahan masalah kegagalan forwarding multi-path
Dalam skenario forwarding multi-path, ketika beberapa server backend tidak dapat dijangkau, Anda dapat menggunakan kueri log SLS untuk memfilter permintaan yang gagal berdasarkan kode status dan mengidentifikasi server backend spesifik yang menyebabkan kegagalan tersebut.
Log akses hanya didukung untuk pendengar Lapisan 7 (HTTP dan HTTPS). Pendengar Lapisan 4 (TCP dan UDP) tidak mendukung fitur ini.
Field log utama
Field | Description |
| Alamat IP dan port server backend tempat CLB meneruskan permintaan. Dalam arsitektur forwarding multi-path, gunakan field ini untuk melacak jalur routing aktual setiap permintaan. |
| Kode status HTTP yang dikembalikan ke klien. Nilai umum dalam skenario kegagalan forwarding: |
| Kode status HTTP aktual yang dikembalikan oleh server backend. Gunakan bersama |
| Waktu (dalam detik) yang dibutuhkan server backend untuk merespons. Gunakan ini untuk membedakan antara kegagalan timeout dan kegagalan penolakan koneksi. |
Prosedur
Login ke Konsol CLB. Di panel navigasi kiri, pilih . Di bilah navigasi atas, pilih wilayah tempat instans CLB Anda dideploy. Temukan instans CLB Anda dan klik View Logs di kolom Actions untuk membuka halaman kueri log SLS.
Masukkan kueri berikut untuk memfilter permintaan forwarding yang gagal:
status:502 or status:504Pada hasil kueri, periksa field
upstream_addruntuk mengidentifikasi alamat IP server backend yang menerima permintaan gagal tersebut. Ini adalah jalur yang tidak dapat dijangkau dalam konfigurasi forwarding multi-path Anda.Untuk mendapatkan tampilan agregat kegagalan per server backend, jalankan kueri berikut:
status:502 or status:504 | select upstream_addr, upstream_status, upstream_response_time, count(*) as error_count group by upstream_addr, upstream_status, upstream_response_time order by error_count descTinjau kolom
upstream_statusuntuk melihat kode respons aktual dari setiap server backend, yang membantu mempersempit penyebab kegagalan.Untuk membedakan kegagalan timeout dari kegagalan penolakan koneksi, periksa field
upstream_response_timepada hasil kueri:Jika
upstream_response_timemendekati ambang batas timeout upstream pendengar, berarti server backend mengalami timeout.Jika
upstream_response_timemendekati nol, berarti server backend langsung menolak koneksi.
Gunakan log akses untuk menyelidiki lonjakan lalu lintas
Ketika instans Classic Load Balancer (CLB) Anda menerima lonjakan lalu lintas mendadak, gunakan log akses Classic Load Balancer (CLB) untuk menganalisis sumber dan tren lalu lintas serta menentukan apakah peningkatan lalu lintas tersebut diharapkan.
Sebelum menjalankan kueri SQL, aktifkan fitur indeks pada Logstore Simple Log Service (SLS) target. Tanpa indeks, Konsol SLS akan mengembalikan error "Index not enabled for Logstore" saat Anda menjalankan pernyataan kueri.
Prosedur
Login ke Konsol CLB.
Di panel navigasi kiri, pilih .
Di bilah navigasi atas, pilih wilayah tempat instans CLB Anda dideploy.
Temukan instans CLB target, lalu klik View Logs di kolom Actions untuk membuka Dasbor SLS.
Di Dasbor SLS, gunakan pemilih rentang waktu untuk menyesuaikan jendela pengamatan. Bandingkan volume lalu lintas saat ini dengan garis dasar historis untuk menilai apakah lonjakan tersebut anomali.
Klik tab Statistical Charts untuk melihat grafik page view (PV) dan Traffic Trend. Cari pola seperti perubahan langkah mendadak atau lonjakan yang terkonsentrasi dalam jendela waktu singkat.
Untuk mengidentifikasi sumber lalu lintas spesifik, masukkan pernyataan kueri di kotak input kueri. Pernyataan SQL berikut mengembalikan 20 alamat IP sumber dan URI permintaan teratas yang diurutkan berdasarkan jumlah permintaan:
* | SELECT client_ip, request_uri, count(*) AS cnt GROUP BY client_ip, request_uri ORDER BY cnt DESC LIMIT 20
Penyebab umum lonjakan lalu lintas dan tindakan yang direkomendasikan
Cause | Characteristics | Recommended action |
CC attack atau DDoS | Laju permintaan sangat tinggi dari sejumlah kecil alamat IP sumber yang menargetkan URI tertentu | Periksa log akses WAF untuk mengonfirmasi sumber serangan; konfigurasikan aturan rate-limiting |
Promosi bisnis atau peluncuran produk | Lonjakan lalu lintas bertepatan dengan acara promosi terjadwal; distribusi geografis sesuai dengan audiens target | Konfirmasi dengan tim bisnis; scale out server backend jika diperlukan |
Web crawler atau scraper | Volume permintaan tinggi dari banyak alamat IP sumber dengan string User-Agent yang serupa; terkonsentrasi pada path yang kaya konten | Lakukan kueri terhadap field |
Redirect upstream atau salah konfigurasi | Lonjakan mendadak pada path tertentu; banyak permintaan memiliki header | Periksa field |