ApsaraMQ for RocketMQ menyediakan fitur dasbor yang memanfaatkan kemampuan penyimpanan dan visualisasi metrik dari Layanan Prometheus Alibaba Cloud ARMS dan Grafana. Fitur ini menawarkan pemantauan metrik komprehensif dan multidimensi serta pengumpulan data untuk membantu Anda memahami status bisnis secara cepat. Topik ini menjelaskan skenario umum, latar belakang, detail metrik, penagihan, serta metode kueri untuk fitur dasbor.
Skenario
Skema 1: Konsumsi pesan online tidak normal, dan pesan tidak diproses tepat waktu. Anda perlu menerima peringatan dan segera mengidentifikasi masalahnya.
Skema 2: Status beberapa pesanan online tidak normal. Anda perlu memverifikasi apakah pesan dikirim dengan benar melalui tautan pesan yang sesuai.
Skema 3: Anda perlu menganalisis tren lalu lintas pesan, karakteristik distribusi, atau volume pesan untuk analisis dan perencanaan tren bisnis.
Skema 4: Anda perlu melihat dan menganalisis topologi dependensi aplikasi hulu dan hilir guna meningkatkan atau mengoptimalkan arsitektur.
Latar belakang bisnis
Dalam alur pengiriman dan penerimaan pesan ApsaraMQ for RocketMQ, faktor-faktor seperti penumpukan pesan dalam antrian, status buffering, dan waktu pemrosesan pada setiap tahap secara langsung mencerminkan kinerja layanan dan status operasional sisi server saat ini. Oleh karena itu, metrik utama untuk ApsaraMQ for RocketMQ terutama terkait dengan skenario berikut.
Skema akumulasi pesan
Gambar berikut menunjukkan status pesan dalam antrian topik tertentu.

ApsaraMQ for RocketMQ mengumpulkan statistik jumlah pesan dan durasi pemrosesan pada berbagai tahap. Metrik ini secara langsung mencerminkan laju pemrosesan pesan dan tingkat penumpukan dalam antrian. Dengan memantau metrik tersebut, Anda dapat menentukan apakah konsumsi layanan Anda tidak normal. Bagian berikut menjelaskan makna metrik ini beserta rumus perhitungannya:
Kategori | Metrik | Definisi | Rumus perhitungan |
Metrik jumlah pesan | Pesan inflight | Pesan yang sedang diproses oleh klien konsumen, tetapi klien belum mengembalikan hasil konsumsi. | Offset pesan terakhir yang ditarik - Offset pesan terakhir yang dikirimkan |
Pesan siap | Pesan yang siap di server ApsaraMQ for RocketMQ. Pesan tersebut terlihat oleh konsumen dan tersedia untuk dikonsumsi. | Offset pesan maksimum - Offset pesan terakhir yang ditarik | |
Keterlambatan konsumen | Jumlah total pesan yang belum diproses. | Jumlah pesan inflight + Jumlah pesan siap | |
Metrik durasi pesan | Waktu siap pesan siap |
| Tidak berlaku |
Waktu antrian pesan siap | Usia pesan siap paling awal. Nilai ini menunjukkan seberapa cepat konsumen menarik pesan. | Waktu saat ini dikurangi waktu siap pesan siap paling awal | |
Waktu keterlambatan konsumen | Waktu yang berlalu sejak pesan tertua yang menunggu respons menjadi siap. Nilai ini menunjukkan seberapa cepat konsumen memproses pesan. | Waktu saat ini - Waktu siap pesan tertua yang menunggu respons |
Skema konsumsi PushConsumer
Untuk konsumen Push, pemrosesan pesan real-time didasarkan pada model thread Reactor khas dalam SDK. Seperti yang ditunjukkan pada gambar berikut, SDK memiliki thread long-polling bawaan. Thread ini menarik pesan secara asinkron ke dalam antrian cache internal SDK. Pesan tersebut kemudian dikirimkan ke thread konsumen, yang memicu pendengar untuk mengeksekusi logika konsumsi lokal.

Untuk informasi selengkapnya, lihat PushConsumer.
Dalam skema konsumsi PushConsumer, metrik yang terkait dengan antrian cache lokal adalah sebagai berikut:
Jumlah pesan dalam antrian cache lokal: Jumlah total pesan yang disimpan dalam antrian cache lokal.
Ukuran pesan dalam antrian cache lokal: Ukuran total semua pesan yang disimpan dalam antrian cache lokal.
Waktu tunggu pesan: Durasi pesan disimpan dalam antrian cache lokal sebelum dikonsumsi.
Detail metrik
Nilai metrik yang terkait dengan transaksi per detik (TPS) pesan, panggilan API pesan, atau volume pesan dihitung berdasarkan pesan normal berukuran 4 KB. Pengali diterapkan untuk pesan yang lebih besar dari ukuran dasar atau yang menggunakan fitur lanjutan. Untuk informasi selengkapnya tentang aturan perhitungan, lihat Spesifikasi Perhitungan.
Bidang-bidang dalam metrik dijelaskan sebagai berikut:
Bidang | Nilai |
Jenis metrik |
|
label |
|
Metrik sisi server
Jenis metrik | Nama metrik | Unit | Deskripsi metrik | Label |
Gauge | rocketmq_instance_requests_max | jumlah/detik | Transaksi per detik (TPS) maksimum untuk pesan yang dikirim dan diterima oleh instans. Nilai ini tidak termasuk permintaan yang dikendalikan alirannya. Nilai ini merupakan maksimum dari 60 sampel yang diambil sekali per detik selama periode 1 menit. |
|
Gauge | rocketmq_instance_requests_in_max | jumlah/detik | Transaksi per detik (TPS) maksimum untuk pesan yang dikirim dari instans. Nilai ini tidak termasuk permintaan yang dikendalikan alirannya. Nilai ini merupakan maksimum dari 60 sampel yang diambil sekali per detik selama periode 1 menit. |
|
Gauge | rocketmq_instance_requests_out_max | jumlah/detik | Transaksi per detik (TPS) maksimum untuk konsumsi pesan pada instans. Nilai ini tidak termasuk permintaan yang dikendalikan alirannya. Nilai ini merupakan maksimum dari 60 sampel yang diambil sekali per detik selama periode 1 menit. |
|
Gauge | rocketmq_topic_requests_max | jumlah/detik | Jumlah maksimum transaksi per detik (TPS) untuk pesan yang dikirim dari instans ke topik. Permintaan yang dikendalikan alirannya tidak termasuk. Nilai ini merupakan maksimum dari 60 sampel yang diambil sekali per detik selama periode 1 menit. |
|
Gauge | rocketmq_group_requests_max | jumlah/detik | Transaksi per detik (TPS) maksimum untuk konsumsi pesan oleh kelompok konsumen dalam instans. Nilai ini tidak termasuk permintaan yang dikendalikan alirannya. Nilai ini merupakan maksimum dari 60 sampel yang diambil sekali per detik selama periode 1 menit. |
|
Gauge | rocketmq_instance_requests_in_threshold | jumlah/detik | Ambang batas pembatasan laju untuk mengirim pesan instans. |
|
Gauge | rocketmq_instance_requests_out_threshold | jumlah per detik | Ambang batas pengendalian aliran untuk konsumsi pesan instans. |
|
Gauge | rocketmq_throttled_requests_in | jumlah | Jumlah pengiriman pesan yang dikendalikan alirannya. |
|
Gauge | rocketmq_throttled_requests_out | jumlah | Jumlah kali konsumsi pesan dikendalikan alirannya. |
|
Gauge | rocketmq_instance_elastic_requests_max | jumlah/detik | Transaksi per detik (TPS) elastis maksimum untuk pesan pada instans. |
|
Counter | rocketmq_requests_in_total | jumlah | Jumlah panggilan ke API pengiriman pesan. |
|
Counter | rocketmq_requests_out_total | jumlah | Jumlah panggilan API untuk konsumsi pesan. |
|
Counter | rocketmq_messages_in_total | pesan | Jumlah pesan yang dikirim produsen ke server. |
|
Counter | rocketmq_messages_out_total | Pesan | Jumlah pesan yang dikirimkan layanan ke konsumen. Jumlah ini mencakup pesan yang sedang diproses konsumen, telah berhasil diproses, atau gagal diproses. |
|
Counter | rocketmq_throughput_in_total | byte | Throughput pesan yang dikirim produsen ke layanan. |
|
Counter | rocketmq_throughput_out_total | byte | Throughput pesan yang dikirimkan dari layanan ke konsumen. Jumlah pesan mencakup pesan yang sedang diproses, telah berhasil diproses, dan gagal. |
|
Counter | rocketmq_internet_throughput_out_total | byte | Lalu lintas internet hilir untuk mengirim dan menerima pesan. |
|
Histogram | rocketmq_message_size | byte | Distribusi ukuran pesan yang berhasil dikirim. Rentang ukuran sebagai berikut:
|
|
Gauge | rocketmq_consumer_ready_messages | pesan | Jumlah pesan siap. Pesan-pesan ini berada di layanan dan siap diproses oleh konsumen. Metrik ini menunjukkan jumlah pesan yang belum mulai diproses konsumen. |
|
Gauge | rocketmq_consumer_inflight_messages | pesan | Jumlah pesan inflight. Jumlah total pesan yang sedang diproses klien konsumen, tetapi belum mengembalikan hasil konsumsi. |
|
Gauge | rocketmq_consumer_queueing_latency | ms | Waktu antrian pesan siap. Jumlah waktu pesan siap tertua telah menunggu dalam antrian. Waktu ini menunjukkan seberapa cepat konsumen menarik pesan. |
|
Gauge | rocketmq_consumer_lag_latency | ms | Latensi pemrosesan konsumen. Jumlah waktu pesan tertua yang belum dikonsumsi telah siap. Ini menunjukkan seberapa cepat konsumen memproses pesan. |
|
Counter | rocketmq_send_to_dlq_messages | pesan | Jumlah pesan yang menjadi surat mati per menit. Pesan menjadi surat mati ketika tidak terkirim setelah jumlah maksimum upaya pengiriman ulang. Berdasarkan konfigurasi kebijakan surat mati kelompok, pesan-pesan ini disimpan ke topik tertentu atau dibuang. |
|
Gauge | rocketmq_storage_size | byte | Ukuran ruang penyimpanan yang digunakan oleh instans. Ini mencakup ukuran semua file. |
|
Metrik produsen
Jenis metrik | Nama metrik | Unit | Deskripsi metrik | Label |
Histogram | rocketmq_send_cost_time | ms | Distribusi latensi untuk panggilan sukses ke API pengiriman pesan. Interval distribusi sebagai berikut:
|
|
Metrik konsumen
Jenis metrik | Nama metrik | Unit | Deskripsi metrik | Label |
Histogram | rocketmq_process_time | ms | Distribusi waktu pemrosesan pesan untuk PushConsumer. Ini mencakup pesan yang berhasil maupun gagal.
Interval distribusi sebagai berikut:
|
|
Gauge | rocketmq_consumer_cached_messages | pesan | Jumlah pesan dalam antrian buffer lokal PushConsumer. |
|
Gauge | rocketmq_consumer_cached_bytes | byte | Ukuran total pesan dalam antrian buffer lokal PushConsumer. |
|
Histogram | rocketmq_await_time | ms | Distribusi waktu tunggu pesan dalam antrian buffer lokal PushConsumer.
Interval distribusi sebagai berikut:
|
|
Penagihan
Metrik dasbor untuk ApsaraMQ for RocketMQ dikategorikan sebagai metrik dasar dalam Layanan Prometheus Alibaba Cloud ARMS. Metrik dasar tidak dikenai biaya, sehingga fitur dasbor dapat digunakan secara gratis.
Untuk informasi selengkapnya, lihat Detail metrik dan Bayar sesuai pemakaian.
Prasyarat
Buat peran terkait layanan.
Nama Peran: AliyunServiceRoleForOns
Nama Kebijakan: AliyunServiceRolePolicyForOns
Izin: Mengizinkan ApsaraMQ for RocketMQ menggunakan peran ini untuk mengakses layanan CloudMonitor dan ARMS Anda guna mengaktifkan fitur pemantauan, peringatan, dan dasbor.
Untuk informasi selengkapnya, lihat Peran terkait layanan.
Lihat dasbor
Dalam ApsaraMQ for RocketMQ, Anda dapat melihat dasbor dari lokasi berikut:
Dashboard: Menampilkan metrik untuk semua topik dan kelompok dalam instans.
Instance Details: Menampilkan ringkasan informasi produsen, metrik terkait penagihan, dan metrik terkait pengendalian aliran untuk instans yang ditentukan.
Topic Details: Menampilkan metrik produksi dan metrik klien produsen untuk topik yang ditentukan.
Group Details: Menampilkan metrik penumpukan pesan dan klien konsumen untuk kelompok yang ditentukan.
Masuk ke Konsol ApsaraMQ for RocketMQ. Di panel navigasi sebelah kiri, klik Instances.
Di bilah navigasi atas, pilih wilayah, seperti China (Hangzhou). Di halaman Instans, klik nama instans yang ingin Anda kelola.
Gunakan salah satu metode berikut untuk melihat dasbor.
Instance Details: Di halaman Instance Details, klik tab Dashboard.
Dashboard: Di panel navigasi sebelah kiri, klik Dashboard.
Topic Details: Di panel navigasi sebelah kiri, klik Topics. Di daftar topik, klik nama topik target. Di halaman Topic Details, klik tab Dashboard.
Group Details: Di panel navigasi sebelah kiri, klik Groups. Di daftar kelompok, klik nama kelompok target. Kemudian, di halaman Group Details, klik tab Dashboard.
FAQ Dasbor
Bagaimana cara mendapatkan data metrik dasbor?
Gunakan Akun Alibaba Cloud Anda untuk masuk ke Konsol ARMS.
Di panel navigasi sebelah kiri, klik Integration Center.
Di halaman Integration Center, masukkan
RocketMQdi kotak teks pencarian dan klik ikon pencarian.Dalam hasil pencarian, pilih layanan Alibaba Cloud yang ingin Anda integrasikan, seperti Alibaba Cloud RocketMQ (5.0) Service. Untuk informasi selengkapnya tentang langkah-langkah integrasi, lihat Langkah 1: Integrasikan data pemantauan layanan Alibaba Cloud.
Setelah provisioning berhasil, klik Provisioning di panel navigasi sebelah kiri.
Di halaman Provisioning, klik tab Cloud Service Region Environment.
Di daftar Cloud Service Region Environment, klik nama lingkungan target untuk membuka halaman Detail Lingkungan Layanan Cloud.
Di tab Component Management, di area Basic Information, klik wilayah layanan cloud di sebelah Prometheus Instance.
Di tab Settings, Anda dapat memperoleh berbagai metode akses data.
Bagaimana cara mengintegrasikan data metrik dasbor ke Grafana yang dikelola sendiri?
Semua data metrik untuk ApsaraMQ for RocketMQ disimpan dalam Managed Service for Prometheus Anda. Ikuti langkah-langkah dalam Bagaimana cara mendapatkan data metrik dasbor? untuk terhubung ke layanan Alibaba Cloud dan mengambil nama lingkungan serta alamat API HTTP. Anda kemudian dapat menggunakan API tersebut untuk mengintegrasikan data metrik dasbor ApsaraMQ for RocketMQ ke Grafana yang dikelola sendiri. Untuk informasi selengkapnya, lihat Integrasikan data Prometheus ke Grafana atau aplikasi yang dikelola sendiri menggunakan alamat API HTTP.
Bagaimana cara memahami nilai TPS Maks instans?
Nilai TPS Maks: Periode statistik adalah 1 menit. Sampel diambil setiap detik, dan hasilnya adalah nilai maksimum dari 60 sampel tersebut.
Berikut contohnya:
Asumsikan sebuah instans menghasilkan 60 pesan dalam 1 menit. Semua pesan merupakan pesan normal berukuran 4 KB. Laju produksi instans adalah 60 pesan per menit.
Jika 60 pesan tersebut dikirim pada detik pertama, TPS instans untuk setiap detik dalam menit tersebut adalah 60, 0, 0, ..., 0.
Nilai TPS Maks instans = 60 TPS.
Jika 40 dari 60 pesan tersebut dikirim pada detik pertama dan 20 dikirim pada detik kedua, TPS instans untuk setiap detik dalam menit tersebut adalah 40, 20, 0, 0, ..., 0.
Nilai TPS Maks instans = 40 TPS.