All Products
Search
Document Center

Server Load Balancer:Gunakan Tracing ALB untuk Menganalisis Transaksi Bisnis End-to-End

Last Updated:Jul 28, 2026

ALB mendukung tracing. Setelah fitur ini diaktifkan, ALB secara otomatis menyisipkan header trace saat meneruskan permintaan, sehingga Anda dapat memperoleh data tracing lengkap—termasuk sumber permintaan, node yang dilalui, dan waktu respons—untuk mengidentifikasi serta mengatasi bottleneck kinerja dalam arsitektur terdistribusi dengan cepat.

Informasi latar belakang

Analisis tracing menyediakan bagi pengembang aplikasi terdistribusi berbagai alat, seperti rekonstruksi rantai panggilan lengkap, statistik volume permintaan, visualisasi topologi, dan analisis ketergantungan aplikasi, guna membantu mendiagnosis dan menganalisis bottleneck kinerja dalam arsitektur aplikasi terdistribusi secara efisien.

Satu catatan trace berkorespondensi dengan rantai panggilan (Trace). Secara umum, rantai panggilan merepresentasikan jalur eksekusi suatu transaksi atau alur kerja melalui sistem terdistribusi. Rantai ini merupakan graf asiklik terarah (DAG) yang terdiri dari beberapa rentang (span), di mana setiap rentang merepresentasikan segmen eksekusi berkelanjutan yang bernama dan diukur durasinya dalam rantai panggilan tersebut.

Setelah tracing ALB diaktifkan, ALB secara otomatis menyisipkan atau memperbarui header trace HTTP saat meneruskan permintaan dan melaporkan data trace ke Alibaba Cloud Managed Service for OpenTelemetry. Tracing ALB mendukung metode tracing OpenTelemetry dan Zipkin.

Metode tracing

OpenTelemetry

Ketika tracing ALB diaktifkan dan tipe OpenTelemetry dipilih, ALB menambahkan atau memperbarui bidang traceparent dalam Header HTTP sebelum meneruskan permintaan ke server backend. Format bidang traceparent adalah {version}-{traceid}-{parentid}-{traceflags}. Tabel berikut menjelaskan setiap bagian.

Field

Description

Format

version

Versi OpenTelemetry yang digunakan.

Selalu 00.

traceid

ID yang mengidentifikasi trace ini.

Bilangan heksadesimal 32 digit.

parentid

ID yang mengidentifikasi node saat ini pada rantai trace.

Bilangan heksadesimal 16 digit.

traceflags

Menunjukkan apakah permintaan ini disampel.

00 (tidak disampel) atau 01 (disampel), ditentukan oleh laju sampel yang dikonfigurasi.

Skenario 1: Permintaan tidak membawa traceparent

Ketika header permintaan yang dikirim oleh klien tidak mencantumkan bidang traceparent, ALB menghasilkan bidang traceparent lengkap dan menyisipkannya ke dalam Header HTTP.

Skenario 2: Permintaan sudah membawa traceparent

Jika layanan hulu (upstream) sudah membawa bidang traceparent dalam header permintaan, ALB mewarisi nilai version, traceid, dan traceflags, serta hanya menghasilkan parentid baru.

Tabel berikut membandingkan nilai-nilai bidang:

Part

Upstream request value

ALB forwarded value

Processing

version

00

00

Inherited

traceid

7a3f91c4d8e26b5f9f3a7c1d6b4e8a25

7a3f91c4d8e26b5f9f3a7c1d6b4e8a25

Inherited

parentid

1d9b4e70a6cf3288

c8e14b7a2d95f360

Newly generated

traceflags

00

00

Inherited

Zipkin

Ketika tracing ALB diaktifkan dan tipe Zipkin dipilih, ALB menambahkan atau memperbarui bidang X-B3-* dalam Header HTTP sebelum meneruskan permintaan ke server backend. Tabel berikut menjelaskan setiap bidang.

Field

Description

Format

X-B3-TraceId

ID yang mengidentifikasi trace ini.

Bilangan heksadesimal 16 digit.

X-B3-SpanId

ID yang mengidentifikasi node saat ini pada rantai trace.

Bilangan heksadesimal 16 digit.

X-B3-ParentSpanId

ID yang mengidentifikasi node sebelumnya pada rantai trace.

Bilangan heksadesimal 16 digit.

X-B3-Sampled

Menunjukkan apakah permintaan ini disampel.

0 (tidak disampel) atau 1 (disampel), ditentukan oleh laju sampel yang dikonfigurasi.

Skenario 1: Permintaan tidak membawa header trace

Jika header permintaan yang dikirim oleh klien tidak membawa bidang X-B3-*, ALB bertindak sebagai node asal (origin) dari rantai trace dan menghasilkan bidang X-B3-TraceId, X-B3-SpanId, dan X-B3-Sampled, lalu menyisipkannya ke dalam Header HTTP. Karena tidak ada node hulu pada rantai tersebut, permintaan yang diteruskan tidak berisi bidang X-B3-ParentSpanId.

Skenario 2: Permintaan sudah membawa header trace

Jika layanan hulu (upstream) sudah membawa bidang lengkap X-B3-* dalam header permintaan, ALB mewarisi nilai X-B3-TraceId dan X-B3-Sampled, menghasilkan X-B3-SpanId baru, dan meneruskan X-B3-SpanId dari permintaan hulu ke server backend sebagai X-B3-ParentSpanId.

Tabel berikut membandingkan nilai-nilai bidang:

Field

Upstream request value

ALB forwarded value

Processing

X-B3-TraceId

7a3f91c4d8e26b5f

7a3f91c4d8e26b5f

Inherited

X-B3-SpanId

1d9b4e70a6cf3288

9f3a7c1d6b4e8a25

Newly generated

X-B3-ParentSpanId

e45c2a9f7b10d36e

1d9b4e70a6cf3288

Uses the upstream SpanId

X-B3-Sampled

1

1

Inherited

Lingkup penerapan

Langkah 1: Aktifkan tracing

  1. Masuk ke Konsol ALB, pilih wilayah tempat instans Anda berada, temukan instans target, lalu klik ID instans tersebut.

  2. Klik tab Listener, temukan listener target, lalu klik ID listener tersebut.

  3. Pada bagian Tracing di tab Listener Details, aktifkan sakelar Tracing.

  4. Pada kotak dialog Enable Tracing, lengkapi konfigurasi berikut lalu klik Save.

    • Activate Service

      • Activate Managed Service for OpenTelemetry: Jika ini pertama kalinya Anda menggunakan layanan ini, pilih perjanjian layanan untuk mengonfirmasi aktivasi.

    • Create Access Log (jika belum dibuat untuk instans ALB target)

      • Project: Unit manajemen resource di Simple Log Service yang digunakan untuk isolasi dan kontrol resource.

        • Select Project: Pilih proyek yang sudah ada dari daftar drop-down.

        • Create Project: Masukkan nama proyek di kolom tersebut.

      • Logstore: Unit di Simple Log Service untuk pengumpulan, penyimpanan, dan kueri data log.

        • Select Logstore: Pilih Logstore yang sudah ada dari daftar drop-down.

        • Create Logstore: Masukkan nama Logstore di kolom tersebut. Jika Anda memilih Create Project, Anda juga harus memilih Create Logstore.

    • Enable Tracing Analysis

      • Tracing Type: Anda dapat memilih OpenTelemetry(W3C) atau Zipkin(B3).

      • Sampling Rate: Nilai yang valid berkisar antara 1 hingga 100, dengan nilai default 100. Sesuaikan laju sampel untuk mengontrol volume data trace yang dilaporkan.

    • Notes on Creating Service-linked Role: Saat menjalankan operasi ini, sistem akan secara otomatis membuat peran terkait layanan.

Langkah 2: Lihat data trace

  1. Masuk ke terminal klien dan uji konektivitas dengan server backend. Untuk informasi lebih lanjut, lihat Implementasi cepat load balancing IPv4 dengan ALB.

  2. Masuk ke Konsol ALB, pilih wilayah tempat instans Anda berada, temukan instans target, lalu klik ID instans tersebut.

  3. Klik tab Listener, temukan listener target, lalu klik ID listener tersebut.

  4. Pada bagian Tracing di tab Listener Details, klik View di samping Trace Analysis dan buka konsol Managed Service for OpenTelemetry untuk melihat data jejak.

    Bilah kueri di bagian atas halaman secara otomatis menyertakan filter attributes.app_lb_id dan attributes.slb_vport. Panel filter cepat di sebelah kiri memungkinkan Anda memfilter berdasarkan status, rentang durasi, dan nama aplikasi.

Informasi tambahan

Nonaktifkan tracing

  • Tracing bergantung pada log akses. Menonaktifkan log akses menyebabkan tracing tidak tersedia, jadi lakukan dengan hati-hati. Setelah Anda menonaktifkan tracing, log akses tetap diaktifkan. Jika Anda tidak lagi membutuhkannya, nonaktifkan secara manual.

  • Ketika tracing dinonaktifkan untuk semua listener di bawah instans ALB, ALB berhenti mengirimkan data trace ke Managed Service for OpenTelemetry.

Penagihan

Saat Anda menggunakan tracing, Alibaba Cloud secara otomatis mengaktifkan Managed Service for OpenTelemetry dan layanan log akses. Setelah diaktifkan, Anda dikenai biaya untuk pelaporan data, penyimpanan trace, dan layanan log.

Wilayah yang didukung untuk tracing ALB

Wilayah cloud publik

Area

Region

China

China (Hangzhou), China (Shanghai), China (Shenzhen), China (Chengdu), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Ulanqab), China (Hong Kong), China (Guangzhou), dan China (Heyuan)

Asia-Pasifik

Singapura, Malaysia (Kuala Lumpur), Jepang (Tokyo), Indonesia (Jakarta)

Eropa dan Amerika

Inggris (London), Jerman (Frankfurt), AS (Virginia), dan AS (Silicon Valley)