All Products
Search
Document Center

Application Real-Time Monitoring Service:Pelacakan sesi lambat

Last Updated:Mar 12, 2026

Saat pemuatan halaman memakan waktu terlalu lama, Anda perlu mengidentifikasi resource spesifik—seperti skrip, stylesheet, gambar, atau font—yang menjadi penyebabnya. Pelacakan sesi lambat di Application Real-Time Monitoring Service (ARMS) menangkap grafik air terjun (waterfall chart) dari pemuatan resource statis selama setiap pemuatan halaman, sehingga Anda dapat melacak sumber pemuatan lambat hingga ke masing-masing resource dan memperbaikinya.

ProblemCara pelacakan sesi lambat membantu
Pemuatan halaman lambatMemecah pemuatan menjadi waktu pemuatan resource individual sehingga Anda dapat mengidentifikasi yang paling lambat
Lonjakan performa yang tidak konsistenMengurutkan 20 sesi paling lambat dalam jendela waktu tertentu untuk perbandingan
Akar masalah tidak diketahuiMenggabungkan grafik air terjun resource dengan metadata klien (IP, browser, OS) untuk mempersempit penyebabnya

Prasyarat

Sebelum memulai, pastikan Anda telah:

Aktifkan pelaporan resource statis di SDK

Secara default, SDK ARMS Browser Monitoring tidak melaporkan data resource statis. Untuk mengaktifkan pelacakan sesi lambat, atur sendResource ke true dalam objek config SDK:

<script>
!(function(c,b,d,a){c[a]||(c[a]={});c[a].config={pid:"atc889zkcf@8cc3f6354******",imgUrl:"https://arms-retcode.aliyuncs.com/r.png?",sendResource:true};
with(b)with(body)with(insertBefore(createElement("script"),firstChild))setAttribute("crossorigin","",src=d)
})(window,document,"https://retcode.alicdn.com/retcode/bl.js","__bl");
</script>

Ganti nilai pid dengan PID aplikasi Anda sendiri dari Konsol ARMS.

Setelah Anda melakukan redeploy aplikasi, SDK akan melaporkan data waktu pemuatan resource statis setiap kali halaman memicu event onload.

Ambang batas pengambilan sampel data

Mengaktifkan sendResource menghasilkan volume telemetri yang besar. Untuk membatasi overhead, ARMS melakukan pengambilan sampel data berdasarkan waktu pemuatan halaman:

Waktu pemuatan halamanPerilaku pelaporan
> 8 dtkData lengkap dilaporkan
2 dtk – 8 dtk5% sesi diambil sebagai sampel
< 2 dtkTidak ada data yang dilaporkan
Penting

Jika aplikasi Anda sudah dimuat dalam waktu kurang dari 2 detik, mengaktifkan pelaporan resource statis hanya akan menambah beban jaringan tanpa memberikan data. Evaluasi apakah manfaat pelacakan sepadan dengan biayanya sebelum Anda mengaktifkannya.

Lacak pemuatan halaman lambat dari halaman Page Speed

Panduan ini menunjukkan cara melacak pemuatan halaman lambat hingga ke resource spesifik. Ini merupakan titik awal yang direkomendasikan saat Anda melihat lonjakan waktu pemuatan halaman.

  1. Di Konsol ARMS, pilih Browser Monitoring > Browser Monitoring di panel navigasi kiri.

  2. Di halaman Browser Monitoring, pilih wilayah di bilah navigasi atas dan klik nama aplikasi.

  3. Pilih Application > Page Speed.

  4. Di bagian Page Load Time Details, cari lonjakan waktu pemuatan. Pada contoh berikut, waktu pemuatan halaman penuh mencapai 36,7 dtk pada pukul 11.00.

    Page Load Time Details section

  5. Gulir ke bawah ke bagian Slow Page Session Trace (TOP20), yang mencantumkan 20 sesi paling lambat dalam jendela waktu yang dipilih. Untuk menyesuaikan jendela waktu, klik ikon jam di pojok kanan atas. Pada contoh ini, satu sesi mencapai waktu pemuatan 36,72 dtk pada pukul 11:36:46 — penyebab langsung dari lonjakan tersebut.

    Slow Page Session Trace (TOP20) section

  6. Di kolom Page, klik nama halaman untuk membuka halaman Slow Loading Details.

  7. Tinjau grafik air terjun di bagian Page Resource Loading Waterfall. Setiap batang mewakili satu permintaan resource beserta rincian waktunya. Saat menganalisis grafik air terjun, perhatikan:

    • Resource dengan waktu pemuatan jauh lebih lama dibandingkan yang lain.

    • Resource berukuran besar (skrip, gambar) yang menghambat rendering.

    • Resource pihak ketiga yang menimbulkan latensi.

    • Resource yang menampilkan Size: 0 atau Time: 0 (lihat Pemecahan masalah data grafik air terjun).

    Page Resource Loading Waterfall section

  8. Periksa bagian Page Information di bagian atas halaman Slow Loading Details untuk metadata klien — alamat IP, browser, dan sistem operasi. Gunakan konteks ini untuk menentukan apakah bottleneck bersifat terkait jaringan atau spesifik pada resource.

    Slow Loading Details page

Jelajahi sesi dari halaman Session Traces

Sebagai alternatif dari memulai di Page Speed, Anda dapat menjelajahi semua sesi yang terekam secara langsung.

  1. Di panel navigasi kiri, pilih Application > Session Traces.

  2. Filter sesi berdasarkan username, ID pengguna, ID sesi, alamat IP, URL halaman, browser, versi browser, jenis koneksi jaringan, atau wilayah.

    Session Traces page

  3. Di kolom Session ID, klik ID sesi untuk membuka halaman Session Details. Untuk detail tentang cara menafsirkan data sesi, lihat Pelacakan sesi.

Pemecahan masalah data grafik air terjun

Ukuran menampilkan 0 di grafik air terjun resource

Nilai Size berasal dari API browser PerformanceResourceTiming.transferSize. API ini mengembalikan 0 dalam dua kasus:

  • Resource disajikan dari cache browser.

  • Resource bersifat cross-origin dan server tidak menyetel header Timing-Allow-Origin.

Untuk memverifikasi, buka Chrome DevTools (F12), buka tab Network, dan pilih Disable cache. Muat ulang halaman — nilai transferSize seharusnya muncul.

Disable cache disabledtransferSize displayed after disabling cache

Waktu menampilkan 0 di grafik air terjun resource

Nilai Time berasal dari PerformanceResourceTiming.duration. Nilai ini mengembalikan 0 ketika browser menyajikan resource dari cache berumur panjang yang dikontrol oleh direktif max-age, karena tidak ada permintaan jaringan yang terjadi.

Untuk mengonfirmasi, buka Chrome DevTools (F12), buka tab Network, pilih Disable cache, lalu refresh. Nilai waktu seharusnya muncul.

Resource cross-origin mengembalikan 0 untuk semua bidang waktu

Karena kebijakan asal sama (same-origin policy), browser mengembalikan 0 untuk atribut waktu berikut pada resource cross-origin:

redirectStart, redirectEnd, domainLookupStart, domainLookupEnd, connectStart, connectEnd, secureConnectionStart, requestStart, responseStart

Untuk memperbaikinya, tambahkan header Timing-Allow-Origin ke respons resource cross-origin:

Timing-Allow-Origin: *

Hal ini memberikan akses ke data waktu pemuatan resource untuk semua origin. Untuk kontrol yang lebih granular, tentukan origin tertentu alih-alih menggunakan *.

Rentang waktu grafik air terjun API

Grafik air terjun API mencakup periode dari awal pemuatan halaman hingga satu menit setelah halaman dimuat sepenuhnya. Grafik ini menampilkan status keseluruhan permintaan API yang dilakukan selama pemuatan halaman.

Waktu respons API berbeda antara grafik air terjun

Waktu respons di grafik air terjun API biasanya beberapa milidetik lebih lama daripada di grafik air terjun resource karena kedua grafik mengukur waktu dengan metode berbeda:

GrafikMetode pengukuran
Grafik air terjun APIMengukur dari saat permintaan dikirim hingga data kembali
Grafik air terjun resourceMenggunakan performance.getEntriesByType('resource'), yang mengandalkan waktu pemuatan resource tingkat browser

Perbedaan ini tidak signifikan dan tidak memengaruhi analisis bottleneck.

Titik awal garis waktu grafik air terjun API

Titik awal garis waktu di grafik air terjun API sama dengan selisih antara waktu pengiriman permintaan API dan timestamp fetchStart halaman. Hal ini menunjukkan kapan setiap permintaan API dipicu relatif terhadap siklus hidup pemuatan halaman.

Topik terkait