Topik ini menjelaskan metrik peringatan yang disediakan oleh layanan sub-pemantauan aplikasi dari Application Real-Time Monitoring Service (ARMS). Semua data metrik dipantau setiap menit.
JVMs
Metrik JVM berikut hanya untuk referensi. Deskripsi terkait JVM mengacu pada dokumentasi resmi JVM.
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Jumlah full GC JVM (nilai instan) | Tidak ada | Ya | Jumlah full garbage collection (GC) yang dilakukan oleh JVM dalam N menit terakhir. Jika full GC sering terjadi di aplikasi Anda, kesalahan mungkin terjadi. |
Durasi full GC JVM (nilai instan) | Milidetik | Tidak | Waktu yang dibutuhkan untuk full GC dalam N menit terakhir. Nilai instan durasi full GC menunjukkan kinerja pengumpulan sampah dari JVM saat ini. Secara umum, semakin pendek durasi full GC, semakin baik kinerja JVM. Jika full GC memakan waktu terlalu lama, aplikasi mungkin mengalami hambatan signifikan. Ini memengaruhi pengalaman pengguna. |
Jumlah young GC JVM (nilai instan) | Tidak ada | Ya | Jumlah young GC yang dilakukan oleh JVM dalam N menit terakhir. Nilai instan jumlah young GC menunjukkan kecepatan pembuatan dan penghancuran objek JVM serta penggunaan generasi muda. Secara umum, semakin banyak young GC, semakin banyak objek yang dibuat dalam aplikasi. Selain itu, aplikasi mungkin memiliki kebocoran memori atau penggunaan memori yang tidak masuk akal. |
Durasi young GC JVM (nilai instan) | Milidetik | Tidak | Waktu yang dibutuhkan untuk young GC dalam N menit terakhir. Nilai instan durasi young GC menunjukkan kinerja pengumpulan sampah dari JVM saat ini. Secara umum, semakin lama durasi young GC, semakin rendah efisiensi pengumpulan sampah. Dalam hal ini, aplikasi mungkin mengalami hambatan. |
Total memori heap JVM | MB | Tidak | Ukuran total memori heap JVM, termasuk memori generasi muda dan tua. Ukuran memori heap JVM harus dikonfigurasi dengan tepat berdasarkan beban dan persyaratan kinerja aplikasi. Memori heap JVM yang terlalu kecil menyebabkan pengumpulan sampah yang sering dan memengaruhi kinerja aplikasi. Memori heap JVM yang terlalu besar menggunakan sejumlah besar sumber daya sistem dan memengaruhi stabilitas sistem. |
Memori heap JVM yang digunakan | MB | Ya | Ukuran memori heap JVM yang digunakan oleh program Java. Ukuran memori heap JVM yang digunakan harus dikontrol secara ketat untuk mencegah penurunan kinerja sistem, atau kelebihan memori yang disebabkan oleh kebocoran memori atau penggunaan memori yang berlebihan. |
Memori non-heap JVM yang dialokasikan | MB | Tidak | Ukuran memori non-heap yang digunakan oleh program Java. Ukuran memori non-heap JVM yang dialokasikan harus dikontrol secara ketat untuk mencegah penggunaan memori yang berlebihan karena pemuatan kelas yang berlebihan atau sejumlah besar variabel statis dan konstanta. |
Memori non-heap JVM awal | MB | Tidak | Secara umum, ukuran awal memori non-heap JVM dihitung secara dinamis berdasarkan faktor-faktor seperti versi JVM, sistem operasi, dan parameter JVM. |
Memori non-heap JVM maksimum | MB | Tidak | Jika Anda menggunakan versi Java lebih awal dari 8, metrik ini dikendalikan oleh parameter JVM MaxPermSize. Jika tidak, metrik ini dikendalikan oleh MaxMetaspaceSize. |
Memori non-heap JVM yang digunakan | MB | Ya | Ukuran memori non-heap JVM yang digunakan, termasuk Metaspace dan PermGen. |
Metaspace JVM yang digunakan | MB | Tidak | Ruang yang menyimpan metadata kelas, termasuk struktur kelas, metode, dan bidang. Secara umum, penggunaan memori ini stabil. |
Jumlah thread JVM yang terblokir | Tidak ada | Tidak | Jumlah thread yang terblokir menunggu kunci monitor. Thread yang terblokir berlebihan dapat menyebabkan penurunan kinerja sistem. |
Jumlah total thread JVM | Tidak ada | Ya | Jumlah thread dalam semua status. Jumlah thread yang berlebihan dapat mengakibatkan kekurangan memori dan sumber daya CPU. Ini memengaruhi kinerja dan stabilitas aplikasi. |
Jumlah thread JVM yang deadlock | Tidak ada | Tidak | Jumlah deadlock. Deadlock terjadi ketika dua atau lebih thread saling menunggu untuk menyelesaikan akses ke suatu sumber daya. Ketika deadlock terjadi di JVM, jumlah thread yang deadlock meningkat hingga deadlock semakin banyak terjadi. Secara umum, semakin banyak thread yang deadlock, semakin parah situasinya. Aplikasi bahkan bisa crash. |
Jumlah thread JVM baru | Tidak ada | Tidak | Jumlah thread yang dibuat oleh JVM. Sejumlah besar thread dapat dibuat di JVM, tetapi thread yang berlebihan dapat mengakibatkan pemborosan sumber daya sistem dan tekanan pada penjadwalan thread. |
Jumlah thread JVM yang dapat dijalankan | Tidak ada | Tidak | Jumlah maksimum thread yang didukung oleh JVM pada runtime. Jika thread yang berlebihan dibuat, sejumlah besar sumber daya memori akan dikonsumsi. Sistem mungkin berjalan lambat atau crash. |
Jumlah thread JVM yang dihentikan | Tidak ada | Tidak | Jumlah thread yang dapat berjalan secara bersamaan di JVM pada runtime. Jumlah thread dapat dikontrol berdasarkan situasi aktual untuk mencegah pemborosan sumber daya thread atau kelaparan thread. |
Jumlah thread JVM yang menunggu timeout | Tidak ada | Ya | Jumlah thread yang menunggu sumber daya dan timeout pada runtime JVM. Jika jumlah thread yang timeout terlalu besar, beberapa bottleneck mungkin ada di sistem. Dalam hal ini, Anda perlu mengoptimalkan sumber daya untuk meningkatkan kemampuan pemrosesan dan kecepatan respons sistem. |
Jumlah thread JVM yang menunggu | Tidak ada | Tidak | Jumlah thread yang menunggu di JVM saat ini. Untuk aplikasi dengan konkurensi tinggi, peningkatan jumlah thread JVM yang menunggu dapat mengakibatkan penurunan kinerja. |
Jumlah GC JVM (nilai kumulatif) | Tidak ada | Tidak | Jumlah kumulatif GC yang dilakukan di JVM. |
Siklus pengumpulan sampah mark-and-sweep JVM (nilai kumulatif) | Tidak ada | Tidak | Jumlah kumulatif siklus pengumpulan sampah mark-and-sweep di JVM. |
Penggunaan memori heap JVM (%) | Tidak ada | Tidak | Rasio antara memori heap yang dialokasikan dan total memori heap pada runtime JVM. Metrik ini dapat digunakan untuk mengukur efisiensi dan kinerja manajemen memori JVM. Secara umum, penggunaan memori heap JVM harus dipertahankan di bawah 70% untuk mencegah masalah seperti kelebihan memori. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan alamat IP node. Anda dapat menggunakan salah satu metode berikut untuk memfilter alamat IP:
Traversal: Melintasi alamat IP setiap node dan mengonfigurasi peringatan untuk data metrik setiap node.
Sama dengan (=): Menentukan node tertentu untuk peringatan. Contoh: =172.20.XX.XX.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua node.
Tugas terjadwal
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Durasi | Milidetik | Tidak | Rata-rata durasi tugas terjadwal. |
Jumlah total eksekusi | Tidak ada | Tidak | Jumlah kali tugas terjadwal dieksekusi. |
Jumlah kesalahan eksekusi | Tidak ada | Tidak | Jumlah kali tugas terjadwal tidak dieksekusi sesuai harapan dalam interval waktu yang ditentukan. |
Latensi penjadwalan | Milidetik | Tidak | Waktu yang dihabiskan untuk penjadwalan sebelum tugas terjadwal dimulai. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan tugas terjadwal. Anda dapat menggunakan salah satu metode berikut untuk memfilter tugas terjadwal:
Traversal: Melintasi tugas terjadwal dan mengonfigurasi peringatan untuk data metrik setiap tugas terjadwal.
Sama dengan (=): Menentukan tugas terjadwal tertentu untuk peringatan. Contoh: =LoadGenerator.mockUserApiLoad.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua tugas terjadwal.
Pengecualian
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Jumlah pengecualian | Tidak ada | Ya | Jumlah pengecualian yang terjadi pada runtime perangkat lunak, seperti pengecualian pointer null, pengecualian array out-of-bounds, dan pengecualian I/O. Anda dapat menggunakan metrik ini untuk memeriksa apakah stack panggilan melempar kesalahan dan apakah kesalahan panggilan aplikasi terjadi. |
Waktu respons panggilan antarmuka abnormal | Milidetik | Ya | Waktu respons panggilan antarmuka abnormal untuk aplikasi. Jika panggilan antarmuka abnormal, kesalahan terjadi. Anda dapat menggunakan metrik ini untuk memperkirakan dampak kesalahan yang dilempar oleh stack panggilan pada waktu respons panggilan antarmuka, dan memeriksa apakah kesalahan terjadi. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan nama antarmuka. Anda dapat menggunakan salah satu metode berikut untuk memfilter nama antarmuka:
Traversal: Melintasi antarmuka yang diakses dan mengonfigurasi peringatan untuk data metrik setiap antarmuka.
Sama dengan (=): Menentukan antarmuka tertentu untuk peringatan. Contoh: =/tb/api/users/{userId}.
Tidak sama dengan (!=): Mengecualikan antarmuka tertentu dari peringatan, dan secara terpisah mengonfigurasi peringatan untuk antarmuka lainnya. Contoh:!=/tb/api/users/{userId}.
Mengandung: Mengonfigurasi peringatan untuk antarmuka yang mengandung kata kunci tertentu. Contoh: Mengandung api.
Tidak Mengandung: Mengonfigurasi peringatan untuk antarmuka yang tidak mengandung kata kunci tertentu. Contoh: Tidak Mengandung api.
Ekspresi reguler: Mengonfigurasi peringatan untuk antarmuka yang cocok dengan ekspresi reguler yang ditentukan. Contoh: =/(api)/i.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua antarmuka.
Metrik di atas dipantau berdasarkan pengecualian. Anda dapat menggunakan salah satu metode berikut untuk memfilter pengecualian:
Traversal: Melintasi pengecualian dan mengonfigurasi peringatan untuk data metrik setiap pengecualian.
Sama dengan (=): Menentukan pengecualian tertentu untuk peringatan. Contoh: =FeignException$InternalServerError.
Tidak sama dengan (!=): Mengecualikan pengecualian tertentu dari peringatan, dan secara terpisah mengonfigurasi peringatan untuk pengecualian lainnya. Contoh:!=FeignException$InternalServerError.
Mengandung: Mengonfigurasi peringatan untuk pengecualian yang mengandung kata kunci tertentu. Contoh: Mengandung data.
Tidak Mengandung: Mengonfigurasi peringatan untuk pengecualian yang tidak mengandung kata kunci tertentu. Contoh: Tidak Mengandung data.
Ekspresi reguler: Mengonfigurasi peringatan untuk pengecualian yang cocok dengan ekspresi reguler yang ditentukan. Contoh: =/(data)/i.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua pengecualian.
Layanan dependensi aplikasi
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Jumlah panggilan layanan dependensi aplikasi | Tidak ada | Tidak | Jumlah antarmuka hilir yang bergantung pada aplikasi. Anda dapat menggunakan metrik ini untuk memeriksa apakah jumlah panggilan layanan dependensi aplikasi meningkat. |
Tingkat kesalahan panggilan layanan dependensi aplikasi (%) | Tidak ada | Tidak | Nilai metrik ini dihitung menggunakan rumus berikut: Tingkat kesalahan panggilan layanan dependensi aplikasi = Jumlah permintaan antarmuka hilir yang abnormal / Total jumlah permintaan antarmuka. Anda dapat menggunakan metrik ini untuk memeriksa apakah kesalahan layanan dependensi aplikasi meningkat dan memengaruhi aplikasi. |
Waktu respons panggilan layanan dependensi aplikasi | Milidetik | Ya | Rata-rata waktu respons antarmuka hilir yang bergantung pada aplikasi. Anda dapat menggunakan metrik ini untuk memeriksa apakah waktu yang dikonsumsi oleh layanan dependensi aplikasi meningkat dan memengaruhi aplikasi saat ini. |
Jumlah panggilan lambat layanan dependensi aplikasi | Tidak ada | Tidak | Jika waktu permintaan antarmuka hilir yang bergantung pada aplikasi melebihi ambang batas, itu akan dihitung sebagai panggilan lambat. Anda dapat menggunakan metrik ini untuk memeriksa apakah layanan dependensi hilir memengaruhi aplikasi. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan jenis panggilan antarmuka. Anda dapat menggunakan salah satu metode berikut untuk memfilter jenis panggilan antarmuka:
Traversal: Melintasi jenis panggilan antarmuka dan secara terpisah mengonfigurasi peringatan untuk data metrik setiap jenis, seperti HTTP, MySQL, dan Redis.
Sama dengan (=): Menentukan jenis panggilan antarmuka tertentu untuk peringatan. Contoh: =http.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua antarmuka.
Instance ECS
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Pemanfaatan CPU node (%) | Tidak ada | Tidak | Pemanfaatan CPU node. Setiap node adalah server. Pemanfaatan CPU yang berlebihan dapat menyebabkan masalah seperti respons sistem yang lambat dan ketidaktersediaan layanan. |
Pemanfaatan CPU node dalam mode pengguna (%) | Tidak ada | Tidak | Rasio antara waktu CPU node yang digunakan oleh proses yang berjalan dalam mode pengguna dan total waktu CPU. Proses dalam mode pengguna adalah aplikasi dalam ruang pengguna, seperti layanan web dan basis data. |
Ruang disk node yang tidak terpakai | MB | Ya | Ruang disk node yang tidak digunakan. Anda dapat menggunakan metrik ini untuk memeriksa apakah ruang disk penuh. Jika ruang disk penuh, sistem mungkin crash atau tidak dapat bekerja sesuai harapan. |
Pemanfaatan disk node (%) | Tidak ada | Tidak | Rasio antara ruang disk yang digunakan dan total ruang disk. Semakin tinggi pemanfaatan disk, semakin sedikit kapasitas penyimpanan node. |
Beban sistem node | Tidak ada | Ya | Anda dapat menggunakan metrik ini untuk memeriksa apakah beban kerja node terlalu tinggi. Untuk node dengan N core, beban kerja maksimum adalah N. |
Memori node yang tidak terpakai | MB | Ya | Ukuran memori yang tidak digunakan dalam node. Anda dapat menggunakan metrik ini untuk memeriksa apakah memori node cukup. Jika memori node tidak mencukupi, pengecualian seperti kesalahan kehabisan memori (OOM) mungkin terjadi. |
Penggunaan memori node (%) | Tidak ada | Tidak | Persentase memori yang digunakan. Jika penggunaan memori node melebihi 80%, Anda perlu mengurangi tekanan memori dengan menyesuaikan konfigurasi node atau mengoptimalkan penggunaan memori tugas. |
Jumlah paket kesalahan yang diterima pada node | Tidak ada | Tidak | Jumlah paket kesalahan yang diterima node saat memproses komunikasi jaringan. Paket kesalahan ini mungkin disebabkan oleh masalah transmisi jaringan atau masalah aplikasi. Jika paket kesalahan diterima, node mungkin gagal memproses komunikasi jaringan, dan sistem mungkin terpengaruh. |
Jumlah paket kesalahan yang dikirim dari node | Tidak ada | Tidak | Jumlah paket kesalahan yang dikirim node saat memproses komunikasi jaringan. Paket kesalahan ini mungkin disebabkan oleh masalah transmisi jaringan atau masalah aplikasi. Anda dapat menggunakan metrik ini untuk memeriksa apakah jaringan node normal. |
Jumlah instance JVM | Tidak ada | Ya | Jumlah instance JVM yang berjalan secara real-time. Secara umum, metrik ini digunakan untuk mengonfigurasi peringatan downtime layanan. |
Jumlah byte yang dikirim dari node | Tidak ada | Tidak | Jumlah data yang dikirim oleh node melalui jaringan, termasuk data, pesan sistem, dan pesan kesalahan yang dikirim oleh aplikasi. |
Jumlah paket yang dikirim dari node | Tidak ada | Tidak | Jumlah pesan yang dikirim dari node melalui jaringan. |
Jumlah byte yang diterima pada node | Tidak ada | Tidak | Jumlah total data yang diterima oleh node melalui jaringan. |
Jumlah paket yang diterima pada node | Tidak ada | Tidak | Jumlah paket yang diterima oleh node melalui jaringan. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan alamat IP node. Anda dapat menggunakan salah satu metode berikut untuk memfilter alamat IP:
Traversal: Melintasi alamat IP setiap node dan mengonfigurasi peringatan untuk data metrik setiap node.
Sama dengan (=): Menentukan node tertentu untuk peringatan. Contoh: =172.20.XX.XX.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua node.
Kontainer
Agen ARMS v4.1.0 dan versi lebih baru mengumpulkan data pemantauan tentang CPU dan memori untuk pemantauan dan peringatan.
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Pemanfaatan CPU dalam mode pengguna | Tidak ada | Tidak | Waktu yang dihabiskan oleh proses menjalankan kode dalam mode pengguna. Ini adalah waktu CPU yang langsung digunakan oleh aplikasi untuk melakukan tugas, termasuk kode aplikasi dan semua fungsi pustaka yang tidak berjalan dalam mode kernel. |
Pemanfaatan CPU dalam mode kernel | Tidak ada | Tidak | Waktu yang dihabiskan oleh proses berjalan dalam mode kernel (juga dikenal sebagai mode sistem). Mode kernel terjadi ketika aplikasi melakukan panggilan sistem, menangani interupsi, atau menggunakan fitur yang disediakan oleh kernel. Bagian waktu ini mencerminkan sumber daya CPU yang dikonsumsi oleh sistem operasi dalam melayani proses. |
Total pemanfaatan CPU | Tidak ada | Ya | Total pemanfaatan CPU adalah pemanfaatan CPU dalam mode pengguna ditambah pemanfaatan CPU dalam mode kernel. |
Penggunaan memori | Byte | Ya | Jumlah memori yang digunakan oleh kontainer pada runtime. Ini mencerminkan jumlah total memori yang aktif digunakan oleh kontainer, termasuk bagian yang ditandai sebagai non-swap oleh sistem operasi dan data yang telah di-cache tetapi masih dianggap aktif. |
Jumlah paket jaringan yang dikirim | Tidak ada | Tidak | Jumlah paket yang dikirim dari kontainer melalui jaringan. |
Jumlah byte yang dikirim | Byte | Ya | Jumlah byte yang dikirim dari kontainer melalui jaringan. |
Jumlah paket kesalahan yang dikirim | Tidak ada | Tidak | Jumlah paket kesalahan yang dikirim kontainer saat memproses komunikasi jaringan. Paket kesalahan ini mungkin disebabkan oleh masalah transmisi jaringan atau masalah aplikasi. Anda dapat menggunakan metrik ini untuk memeriksa apakah jaringan kontainer normal. |
Jumlah paket yang dibuang yang dikirim | Tidak ada | Tidak | Jumlah total paket jaringan keluar yang telah dijatuhkan oleh sistem atau stack jaringan sejak antarmuka jaringan kontainer diaktifkan. |
Jumlah paket yang diterima | Tidak ada | Tidak | Jumlah pesan yang diterima oleh kontainer melalui jaringan. |
Jumlah byte yang diterima | Byte | Ya | Jumlah total data yang diterima oleh kontainer melalui jaringan. |
Jumlah paket kesalahan yang diterima | Tidak ada | Tidak | Jumlah paket kesalahan yang diterima kontainer saat memproses komunikasi jaringan. Paket kesalahan ini mungkin disebabkan oleh masalah transmisi jaringan atau masalah aplikasi. Jika paket kesalahan diterima, kontainer mungkin gagal memproses komunikasi jaringan, dan sistem mungkin terpengaruh. |
Jumlah paket yang dibuang yang diterima | Tidak ada | Tidak | Jumlah total paket jaringan masuk yang telah dijatuhkan oleh sistem atau stack jaringan sejak antarmuka jaringan kontainer diaktifkan. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan alamat IP node. Anda dapat menggunakan salah satu metode berikut untuk memfilter alamat IP:
Traversal: Melintasi kontainer dan mengonfigurasi peringatan untuk data metrik setiap kontainer.
Sama dengan (=): Menentukan kontainer tertentu untuk peringatan. Contoh: =172.20.XX.XX.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua kontainer.
Layanan yang disediakan aplikasi
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Jumlah panggilan | Tidak ada | Ya | Jumlah panggilan titik masuk aplikasi, termasuk panggilan HTTP dan Dubbo. Anda dapat menggunakan metrik ini untuk menganalisis jumlah panggilan aplikasi, memperkirakan volume bisnis, dan memeriksa apakah pengecualian terjadi dalam aplikasi. |
Jumlah panggilan lambat | Tidak ada | Tidak | Jika waktu respons panggilan titik masuk aplikasi, termasuk panggilan HTTP dan Dubbo, melebihi ambang batas, itu akan dihitung sebagai panggilan lambat. Anda dapat menggunakan metrik ini untuk memeriksa apakah pengecualian terjadi dalam aplikasi. |
Jumlah panggilan kesalahan | Tidak ada | Ya | Jumlah panggilan titik masuk kesalahan aplikasi, termasuk panggilan HTTP dan Dubbo. Jika kode status 400 dikembalikan atau panggilan titik masuk aplikasi dicegat oleh lapisan atas Dubbo, panggilan tersebut dianggap sebagai kesalahan. Anda dapat menggunakan metrik ini untuk memeriksa apakah aplikasi memiliki panggilan kesalahan. |
Tingkat kesalahan panggilan (%) | Tidak ada | Ya | Tingkat kesalahan panggilan titik masuk aplikasi dihitung menggunakan rumus berikut: Tingkat kesalahan = Jumlah panggilan titik masuk aplikasi yang salah / Total jumlah panggilan titik masuk aplikasi × 100%. |
Waktu respons panggilan | Milidetik | Ya | Waktu respons panggilan titik masuk aplikasi, seperti panggilan HTTP atau panggilan Dubbo. Anda dapat menggunakan metrik ini untuk memeriksa permintaan lambat dan pengecualian. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan nama antarmuka. Anda dapat menggunakan salah satu metode berikut untuk memfilter nama antarmuka:
Traversal: Melintasi antarmuka yang diakses dan mengonfigurasi peringatan untuk data metrik setiap antarmuka.
Sama dengan (=): Menentukan antarmuka tertentu untuk peringatan. Contoh: =/tb/api/users/{userId}.
Tidak sama dengan (!=): Mengecualikan antarmuka tertentu dari peringatan, dan secara terpisah mengonfigurasi peringatan untuk antarmuka lainnya. Contoh:!=/tb/api/users/{userId}.
Mengandung: Mengonfigurasi peringatan untuk antarmuka yang mengandung kata kunci tertentu. Contoh: Mengandung api.
Tidak Mengandung: Mengonfigurasi peringatan untuk antarmuka yang tidak mengandung kata kunci tertentu. Contoh: Tidak Mengandung api.
Ekspresi reguler: Mengonfigurasi peringatan untuk antarmuka yang cocok dengan ekspresi reguler yang ditentukan. Contoh: =/(api)/i.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua antarmuka.
Metrik di atas dipantau berdasarkan jenis panggilan antarmuka. Anda dapat menggunakan salah satu metode berikut untuk memfilter jenis panggilan antarmuka:
Traversal: Melintasi jenis panggilan antarmuka dan secara terpisah mengonfigurasi peringatan untuk data metrik setiap jenis, seperti HTTP, MySQL, dan Redis.
Sama dengan (=): Menentukan jenis panggilan antarmuka tertentu untuk peringatan. Contoh: =http.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua antarmuka.
Kolam thread
Metrik
Nama Metrik | Sering digunakan | Deskripsi |
Jumlah thread inti | Ya | Jumlah thread yang selalu aktif dalam kolam thread. |
Jumlah maksimum thread | Ya | Jumlah maksimum thread yang dapat ada secara bersamaan dalam kolam thread. |
Jumlah thread aktif | Ya | Jumlah thread yang mengeksekusi tugas. Anda dapat menggunakan metrik ini untuk memantau status kolam thread dan mengevaluasi kinerja kolam thread. |
Ukuran antrian | Ya | Ukuran antrian thread bergantung pada persyaratan aplikasi dan ketersediaan sumber daya sistem. Dalam pemrograman multithread, jika ukuran antrian terlalu kecil, tugas mungkin mengantri dalam waktu lama. Ini mengurangi kinerja program. Jika ukuran antrian terlalu besar, sejumlah besar sumber daya sistem mungkin dikonsumsi. Ini menyebabkan crash sistem atau penurunan kinerja. |
Jumlah thread saat ini | Ya | Jumlah thread yang sedang berjalan atau menunggu untuk dijalankan. |
Jumlah tugas yang dieksekusi | Ya | Jumlah tugas yang telah dieksekusi dan selesai dalam antrian tugas atau kolam thread. Anda dapat menggunakan metrik ini untuk mengevaluasi kinerja antrian tugas atau kolam thread. |
Penggunaan kolam thread (%) | Ya | Rasio antara jumlah thread yang digunakan dalam kolam thread dan jumlah total thread dalam kolam thread. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan alamat IP node. Anda dapat menggunakan salah satu metode berikut untuk memfilter alamat IP:
Traversal: Melintasi alamat IP setiap node dan mengonfigurasi peringatan untuk data metrik setiap node.
Sama dengan (=): Menentukan node tertentu untuk peringatan. Contoh: =172.20.XX.XX.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua node.
Metrik di atas dipantau berdasarkan nama kolam thread. Anda dapat menggunakan salah satu metode berikut untuk memfilter nama kolam thread:
Traversal: Melintasi kolam thread dan mengonfigurasi peringatan untuk data metrik setiap kolam thread.
Sama dengan (=): Menentukan kolam thread tertentu untuk peringatan. Contoh: =pool-*-thread-*.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua kolam thread.
Metrik di atas dipantau berdasarkan jenis kolam thread. Anda dapat menggunakan salah satu metode berikut untuk memfilter jenis kolam thread:
Traversal: Melintasi jenis kolam thread dan mengonfigurasi peringatan untuk data metrik setiap jenis kolam thread.
Sama dengan (=): Menentukan jenis kolam thread tertentu untuk peringatan. Contoh: =FixedThreadPool.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua jenis kolam thread.
Kode status HTTP
Metrik
Nama Metrik | Sering digunakan | Deskripsi |
Jumlah permintaan HTTP dengan kode status 4xx | Ya | Jumlah permintaan HTTP yang mengembalikan kode status 4xx. Kode status 4xx menunjukkan bahwa sumber daya yang diminta tidak ada, atau parameter yang diperlukan hilang. Kode status 4xx umum termasuk 400 dan 404. |
Jumlah permintaan HTTP dengan kode status 5xx | Ya | Jumlah permintaan HTTP yang mengembalikan kode status 5xx. Kode status 5xx menunjukkan bahwa kesalahan server internal telah terjadi, atau sistem sedang sibuk. Kode status 5xx umum termasuk 500 dan 503. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan nama antarmuka. Anda dapat menggunakan salah satu metode berikut untuk memfilter nama antarmuka:
Traversal: Melintasi antarmuka yang diakses dan mengonfigurasi peringatan untuk data metrik setiap antarmuka.
Sama dengan (=): Menentukan antarmuka tertentu untuk peringatan. Contoh: =/tb/api/users/{userId}.
Tidak sama dengan (!=): Mengecualikan antarmuka tertentu dari peringatan, dan secara terpisah mengonfigurasi peringatan untuk antarmuka lainnya. Contoh:!=/tb/api/users/{userId}.
Mengandung: Mengonfigurasi peringatan untuk antarmuka yang mengandung kata kunci tertentu. Contoh: Mengandung api.
Tidak Mengandung: Mengonfigurasi peringatan untuk antarmuka yang tidak mengandung kata kunci tertentu. Contoh: Tidak Mengandung api.
Ekspresi reguler: Mengonfigurasi peringatan untuk antarmuka yang cocok dengan ekspresi reguler yang ditentukan. Contoh: =/(api)/i.
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua antarmuka.
Basis data
Metrik
Nama Metrik | Satuan | Sering digunakan | Deskripsi |
Jumlah permintaan basis data | Tidak ada | Ya | Jumlah permintaan yang dikirim aplikasi ke basis data pada runtime. Setiap permintaan berisi operasi baca atau tulis. Jumlah permintaan basis data memengaruhi kinerja dan waktu respons aplikasi. |
Jumlah kesalahan permintaan basis data | Tidak ada | Ya | Jumlah kesalahan yang terjadi ketika aplikasi meminta basis data pada runtime, seperti kegagalan koneksi basis data, kesalahan pernyataan query, dan izin tidak mencukupi. Sejumlah besar kesalahan permintaan basis data menunjukkan bahwa interaksi antara aplikasi dan basis data tidak normal. Dalam hal ini, aplikasi tidak dapat berjalan sesuai harapan. |
Waktu respons permintaan basis data | Milidetik | Ya | Interval waktu antara waktu aplikasi mengirim permintaan ke basis data dan waktu basis data memberikan respons. Waktu respons permintaan basis data memengaruhi kinerja aplikasi dan pengalaman pengguna. Jika waktu respons terlalu lama, aplikasi mungkin tersendat atau melambat. |
Jumlah permintaan basis data lambat | Tidak ada | Tidak | Jika waktu yang dibutuhkan dari mengirim permintaan dari aplikasi hingga menerima respons dari basis data melebihi ambang batas, itu dihitung sebagai panggilan lambat. Sejumlah besar panggilan lambat secara langsung memengaruhi kinerja aplikasi dan pengalaman pengguna. |
Dimensi dan kondisi filter
Metrik di atas dipantau berdasarkan nama basis data. Anda dapat menggunakan salah satu metode berikut untuk memfilter nama basis data:
Traversal: Melintasi basis data dan mengonfigurasi peringatan untuk data metrik setiap basis data.
Sama dengan (=): Menentukan jenis basis data tertentu untuk peringatan. Contoh: =mysql-pod:3306(demo_db).
Tanpa dimensi: Menggabungkan dan mengonfigurasi peringatan untuk data metrik semua basis data.