Peta dunia

 

EN: Read in English

Dunia O4: Diari & Satu Pesanan

Jejak satu pesanan merentas servis

Anda akan belajar: cara satu trace ID bergerak antara servis, supaya anda boleh jejak satu pesanan dari mula hingga akhir.

Teks BM belum disemak oleh penutur asli.

Disemak dengan Prometheus 3 pada 1 Nov 2026

Masalahnya

Pesanan A1041 gagal. Span kedai-api ada dalam satu trace. Span kedai-pay duduk dalam trace lain, dengan trace ID baharu. Apa yang tak kena?

Pilih satu jawapan.

Tengok

kedai-api panggil kedai-pay. Ketik baris yang bawa nombor pesanan.

0 daripada 1 dijumpai

Hantar trace ID ke depan, dalam header, ialah context propagation: Hantar trace ID ke servis seterusnya, dalam header traceparent, supaya pesanan kekal dengan nombornya..

Cuba

Bina header traceparent. Ketik kepingan mengikut urutan.

Ketik kepingan ikut turutan yang betul.

…

Teka

kedai-pay baca header itu dan mulakan span POST /pay. Apa Parent ID-nya?

Pilih satu jawapan.

Semak

bash
logcli query --quiet '{app=~"kedai-.*"} |= "3c9a51e0b7d24f6e9a18c2d4e6f80b15"'
2026-11-01T17:45:22Z {app="kedai-api", detected_level="error", service_name="kedai-api"} {"level":"error","msg":"payment timeout","order_id":"A1041","duration_ms":3000,"trace_id":"3c9a51e0b7d24f6e9a18c2d4e6f80b15"}
2026-11-01T17:45:21Z {app="kedai-pay", detected_level="warn", service_name="kedai-pay"} {"level":"warn","msg":"slow query","table":"payments","duration_ms":2800,"trace_id":"3c9a51e0b7d24f6e9a18c2d4e6f80b15"}
2026-11-01T17:45:19Z {app="kedai-api", detected_level="info", service_name="kedai-api"} {"level":"info","msg":"order received","order_id":"A1041","trace_id":"3c9a51e0b7d24f6e9a18c2d4e6f80b15"}
logcli cari trace ID dalam setiap diari kedai. Tiga baris kembali: order received dalam kedai-api, slow query 2800 ms dalam kedai-pay, kemudian payment timeout dalam kedai-api.

Nombor yang sama ada dalam kedua-dua diari. Satu carian jumpa pesanan itu di mana-mana.

Semak

Perkara pertama yang berlaku di atas. Susun ikut turutan. Guna anak panah, atau seret.

  • kedai-api: payment timeout selepas 3 s
  • kedai-api: order received
  • kedai-pay: slow query pada payments, 2.8 s

Susun cerita pesanan A1041 ikut masa. Guna masa dalam baris-baris itu.

Anda berjaya!

Kini anda boleh jejak satu pesanan merentas servis dengan trace ID-nya.

Nak tahu lebih (pilihan)

Anda jarang tulis traceparent sendiri. Instrumentasi OpenTelemetry untuk klien dan server HTTP tambah dan baca untuk anda. Tetap semak setiap hop. Satu servis yang buang header itu belah trace jadi dua.