All Products
Search
Document Center

Application Real-Time Monitoring Service:Diagnostik Arthas

Last Updated:Jun 16, 2026

Arthas adalah alat andal untuk menangani masalah produksi pada aplikasi Java. Arthas memanfaatkan teknologi bytecode enhancement untuk memeriksa status runtime aplikasi tanpa perlu me-restart proses JVM.

Layanan Pemantauan Aplikasi Waktu Nyata (ARMS) mengintegrasikan seluruh kemampuan Arthas dan menawarkan keunggulan berikut dibandingkan instalasi mandiri:

  • Tidak memerlukan ketergantungan JDK. Anda dapat mengaktifkan atau menonaktifkan diagnostik Arthas sesuai kebutuhan untuk beberapa aplikasi hanya dengan satu klik, tanpa perlu mengunduh atau menginstal Arthas.

  • Antarmuka berbasis web untuk fitur-fitur umum menghilangkan kebutuhan menghafal perintah, mencari referensi perintah, atau menulis ekspresi.

  • Integrasi dengan konteks ARMS. Anda dapat menggunakan perintah trace untuk melihat trace ID ARMS.

Prasyarat

Catatan
  • Hanya Edisi Pro Pemantauan Aplikasi yang mendukung fitur diagnostik Arthas.

  • Kami merekomendasikan agar Anda hanya mengaktifkan diagnostik Arthas saat troubleshooting. Nonaktifkan fitur ini selama operasi normal.

  • Agen ARMS harus versi v2.7.1.3 atau lebih baru.

  • Pemantauan Aplikasi telah diaktifkan untuk aplikasi Anda. Untuk informasi selengkapnya, lihat Ikhtisar Pemantauan Aplikasi.

  • Aplikasi ditulis dalam bahasa Java.

Latar Belakang

Fitur diagnostik Arthas yang disediakan oleh ARMS terutama digunakan untuk melengkapi kemampuan diagnostik waktu nyata dari ARMS. Fitur diagnostik Arthas dari ARMS mencakup jenis-jenis berikut:

  • JVM overview: Lihat penggunaan memori waktu nyata, informasi sistem, variabel sistem, dan variabel lingkungan untuk proses JVM saat ini.

  • Thread time-consuming analysis: Lihat waktu eksekusi utas dan stack metode waktu nyata untuk setiap utas dalam proses JVM saat ini.

  • Method execution analysis: Tangkap catatan eksekusi untuk metode non-JDK apa pun yang memenuhi kondisi tertentu. Catatan ini mencakup parameter, exception, nilai yang dikembalikan, serta waktu eksekusi metode internal.

  • Object viewer: Lihat nilai properti waktu nyata dari instans kelas apa pun.

  • Real-time dashboard: Lihat data waktu nyata untuk komponen umum. Misalnya, Anda dapat melihat konfigurasi, penggunaan, dan waktu eksekusi SQL dari kolam koneksi Druid.

  • Arthas Shell: Gunakan command-line interface untuk melakukan diagnostik Arthas.

Catatan

Fitur analisis performa Arthas telah sepenuhnya ditingkatkan menjadi fitur continuous profiling, yang lebih andal, lebih mudah digunakan, dan dapat diaktifkan kapan saja.

Continuous profiling membantu Anda mengidentifikasi bottleneck performa yang disebabkan oleh CPU, memori, dan I/O pada aplikasi Java. Fitur ini menyediakan statistik terperinci yang diuraikan berdasarkan nama metode, nama kelas, dan nomor baris untuk membantu Anda mengoptimalkan aplikasi, mengurangi latensi, meningkatkan throughput, dan menghemat biaya. Untuk informasi selengkapnya, lihat Aktifkan continuous profiling.

Aktifkan diagnostik Arthas

  1. Login ke Konsol ARMS. Di panel navigasi sebelah kiri, pilih Application Monitoring > Application List.

  2. Di panel navigasi sebelah kiri, klik Application Settings, lalu klik tab Custom Configurations.

  3. Pada tab Custom Configurations, di bagian Arthas Monitoring, aktifkan Arthas Switch. Secara opsional, Anda dapat menentukan alamat IP instans aplikasi tempat Anda ingin mengaktifkan diagnostik Arthas.

  4. Di pojok kiri bawah tab Custom Configurations, klik Save.

Lihat diagnostik Arthas

  1. Login ke Konsol ARMS. Di panel navigasi sebelah kiri, pilih Application Monitoring > Application List.

  2. Di panel navigasi sebelah kiri, pilih Application Diagnostics > Arthas Diagnostics.

  3. Dari daftar drop-down di bagian atas halaman diagnostik Arthas, pilih instans aplikasi yang ingin Anda diagnosis.

    • Jika versi agen instans tersebut lebih lama dari 2.7.1.3, Anda akan diminta untuk melakukan upgrade agen.

    • Jika versi agen instans tersebut 2.7.1.3 atau lebih baru, informasi diagnostik instans tersebut akan ditampilkan.

JVM overview

Fitur JVM overview memungkinkan Anda melihat informasi terkait JVM untuk aplikasi Anda, termasuk memori JVM, informasi sistem operasi, dan informasi variabel.

Secara default, halaman diagnostik Arthas menampilkan tab JVM Overview. Pada tab JVM Overview, Anda dapat melihat informasi berikut:

  • JVM Memory: informasi tentang memori JVM, termasuk penggunaan memori heap, penggunaan memori non-heap, dan status garbage collection (GC).

  • Operating System Information: informasi tentang sistem operasi, termasuk beban rata-rata sistem, nama sistem operasi, versi sistem operasi, dan versi Java.

  • Variable information: informasi tentang variabel, termasuk properti sistem dan variabel lingkungan.

Thread time-consuming analysis

Fitur ini menampilkan semua utas dalam aplikasi Anda beserta stack trace-nya untuk membantu Anda mengidentifikasi utas yang memakan waktu secara cepat.

  1. Pada halaman diagnostik Arthas, klik tab Threading Time Analysis.

    Tab Threading Time Analysis menampilkan konsumsi waktu utas waktu nyata untuk proses JVM saat ini dan mengelompokkan utas-utas serupa. Ringkasan jumlah utas berdasarkan status ditampilkan di bagian atas halaman.

  2. Klik ikon + di samping grup utas untuk memperluasnya dan melihat detail masing-masing utas, termasuk ID utas, penggunaan CPU, dan status.

  3. Untuk melihat stack trace utas tertentu, klik View Live Stack pada kolom Actions untuk utas tersebut.

    Kotak dialog Thread Details muncul, menampilkan nama utas, status running, dan stack trace lengkap.

Method execution analysis

Fitur ini menangkap waktu eksekusi, parameter input, nilai yang dikembalikan, dan informasi lainnya untuk satu kali eksekusi metode. Anda juga dapat menyelidiki lebih dalam panggilan internalnya. Hal ini membantu Anda menemukan akar penyebab panggilan lambat secara cepat, terutama untuk masalah yang tidak dapat direproduksi secara offline atau memiliki log yang tidak lengkap.

  1. Pada halaman diagnostik Arthas, klik tab Method Execution Analysis.

  2. Pada tab Method Execution Analysis, masukkan kata kunci nama kelas di kotak pencarian dan klik ikon 搜索 Search.

  3. Dari hasil pencarian, pilih kelas yang ingin Anda diagnosis. Kemudian, dari kotak pemilihan metode di sebelah kanan, pilih metode dari kelas tersebut dan klik OK.

    Halaman menampilkan catatan eksekusi yang ditangkap secara acak untuk metode yang dipilih dari ARMS atau .

    • Bagian Execution Stack di sebelah kiri menunjukkan catatan panggilan internal dari metode yang didiagnosis.

      • Untuk menyelidiki lebih dalam metode internal, klik Drill-down pada kolom Actions.

      • Untuk melihat kode sumber, klik View Source Code di bagian atas bagian Execution Stack.

        Waktu eksekusi setiap metode internal ditampilkan sebagai komentar dalam kode sumber.

    • Bagian Method Execution Result di sebelah kanan menunjukkan nilai parameter, nilai yang dikembalikan, exception, variabel anggota, dan trace ID untuk eksekusi ini.

    • Pada bagian Set Execution Conditions di sebelah kanan, untuk menangkap catatan eksekusi metode tertentu, atur kondisi sebagai berikut:

      1. Pilih metode overloaded dari metode saat ini.

      2. Dari daftar drop-down Please select an initial filter key, pilih tipe kunci dan klik ikon 向左箭头.

        Tipe kunci filter awal:

        • params[n]: Parameter ke-n dari metode.

        • returnObj: Nilai yang dikembalikan oleh metode.

        • Method execution time: Durasi eksekusi metode.

        • Throw exception: Menentukan apakah akan melemparkan exception selama eksekusi metode.

        Catatan

        Jika kunci filter awal yang dipilih merupakan tipe bersarang, Anda harus terus memilih field internalnya hingga mencapai tipe dasar.

      3. Pilih kondisi filter.

      4. Masukkan nilai filter.

      5. Klik Add.

        Kondisi filter yang ditambahkan muncul di bagian Current Filter Condition.

      6. Di pojok kanan atas bagian Execution Stack, klik ikon 刷新 Refresh untuk menangkap eksekusi metode baru berdasarkan kondisi yang telah ditetapkan.

Object viewer

Gunakan object viewer untuk memeriksa status saat ini dari objek singleton. Fitur ini berguna untuk troubleshooting masalah terkait status aplikasi, seperti konfigurasi, blacklist atau daftar putih, dan variabel anggota.

  1. Pada halaman diagnostik Arthas, klik tab Object Viewer.

  2. Pada tab Object Viewer, masukkan kata kunci nama kelas di kotak pencarian dan klik ikon Search.

  3. Dari hasil pencarian, pilih kelas yang ingin Anda diagnosis. Kemudian, dari kotak pemilihan instans di sebelah kanan, pilih instans dari kelas tersebut dan klik OK.

    Halaman kemudian menampilkan nilai waktu nyata field-field dalam instans tersebut.

    • Untuk field tipe simple, nilainya ditampilkan langsung di kolom Details pada bagian Object field real-time value.

    • Untuk field tipe kompleks, klik View Details di kolom Details pada bagian Object field real-time value. Detail field ditampilkan di bagian Field Details di sebelah kanan.

      Bagian Field Details hanya mendukung deserialisasi dan menampilkan satu level field kompleks. Untuk melihat data yang lebih spesifik, Click untuk melihat data lebih rinci untuk field tersebut.

Real-time dashboard

Gunakan real-time dashboard untuk melihat status waktu nyata komponen-komponen kunci dalam sistem Anda, seperti kolam koneksi database dan kolam koneksi HTTP. Hal ini membantu troubleshooting masalah terkait resource.

  1. Pada halaman diagnostik Arthas, klik tab Live Kanban.

  2. Dari daftar drop-down pada tab Live Kanban, pilih dashboard. Kemudian, dari kotak pemilihan instans di sebelah kanan, pilih instans untuk dashboard tersebut dan klik Add to dashboard.

    Halaman menampilkan status waktu nyata untuk dashboard tersebut. Misalnya, untuk kolam koneksi Druid, dashboard menunjukkan informasi status waktu nyata, termasuk konfigurasi dasar, status kolam koneksi, dan distribusi waktu eksekusi.

Arthas Shell

Catatan

Fitur Arthas Shell saat ini hanya tersedia di wilayah China (Beijing), China (Shanghai), China (Hangzhou), China (Shenzhen), dan China (Zhangjiakou).

Untuk detailnya, lihat dokumentasi open-source resmi.

Setelah Anda membuka halaman Arthas Shell, pilih Line di bagian atas dan klik Connect. Ketika koneksi berhasil, jendela terminal akan muncul. Anda dapat memasukkan perintah Arthas pada prompt perintah untuk melakukan operasi diagnostik.