Message Service (MNS) menyediakan pelacakan pesan untuk melacak setiap pesan sepanjang siklus hidupnya—mulai dari pengiriman, pencocokan langganan, dorong (push), hingga konsumsi—lengkap dengan cap waktu, hasil operasi, serta identitas produsen dan konsumen guna keperluan troubleshooting.
Kasus penggunaan
Fitur jejak pesan membantu Anda:
-
Konfirmasi pengiriman pesan: Verifikasi apakah pesan telah mencapai antrian atau topik tujuan dan telah dikonsumsi.
-
Atasi konsumsi duplikat: Lihat catatan konsumsi lengkap suatu pesan—termasuk waktu, identitas konsumen, dan hasil setiap kali dikonsumsi.
-
Atasi kegagalan push: Periksa status detail dan alasan kegagalan push langganan topik (HTTP, email, dll.).
-
Atasi latensi pesan: Tinjau cap waktu setiap tahap siklus hidup untuk mengidentifikasi keterlambatan.
-
Periksa status pesan terjadwal: Verifikasi apakah pesan terjadwal telah mencapai waktu pengirimannya.
-
Kueri identitas produsen dan konsumen: Lihat IP produsen, AccessKey, dan IP konsumen untuk troubleshooting.
Parameter jejak
Jejak pesan antrian
Jejak pesan terdiri dari tiga bagian: Informasi Pengiriman, Informasi Pesan, dan Informasi Konsumsi.
Mengirim pesan
Pengiriman standar
|
Parameter |
Deskripsi |
|
Message source |
Produsen yang mengirim pesan langsung ke antrian. |
|
Method |
Operasi API, seperti SendMessage atau BatchSendMessage. |
|
Producer IP |
Alamat IP client pengirim. |
|
AccessKey |
AccessKey yang digunakan untuk mengirim pesan. |
|
Send time |
Waktu server saat pesan tiba di antrian. |
|
Result |
Menampilkan "Success" atau pesan error spesifik. |
Dead-letter
Jejak baru dihasilkan ketika pesan dipindahkan ke dead-letter queue.
|
Parameter |
Deskripsi |
|
Message source |
Konstanta: Dead-Letter |
|
Original queue |
Nama antrian asal pesan tersebut. |
|
Original queue Message ID |
ID Pesan pesan tersebut di antrian asal. |
|
Send time |
Waktu pesan dipindahkan ke dead-letter queue. |
|
Result |
Menampilkan "Success" atau pesan error spesifik. |
Subscription push
Dihasilkan ketika topik mendorong pesan ke antrian melalui langganan.
|
Parameter |
Deskripsi |
|
Message source |
Konstanta: Topic Queue Subscription |
|
Topic |
Nama topik yang mendorong pesan tersebut. |
|
Subscription |
Nama langganan yang mendorong pesan tersebut. |
|
Original Message ID |
ID Pesan pesan tersebut di topik. |
|
Send time |
Waktu pesan didorong ke antrian. |
|
Result |
Menampilkan "Success" atau pesan error spesifik. |
Layanan cloud lainnya
Dihasilkan ketika EventBridge mendorong pesan ke antrian melalui langganan.
|
Parameter |
Deskripsi |
|
Message source |
Konstanta: other cloud services |
|
Method |
Konstanta: Notify |
|
Send time |
Waktu pesan didorong ke antrian. |
|
Result |
Menampilkan "Success" atau pesan error spesifik. |
Informasi pesan
Pesan standar
|
Parameter |
Deskripsi |
|
Message type |
Nilai: standard message |
|
Message ID |
Identifikasi unik untuk pesan tersebut. |
|
Queue |
Nama antrian yang berisi pesan tersebut. |
|
Retention period |
Durasi penyimpanan maksimum. Sesuai dengan atribut |
|
Visibility timeout |
Durasi pesan yang telah diambil tetap tidak terlihat oleh konsumen lain. Sesuai dengan atribut |
Pesan terjadwal
|
Parameter |
Deskripsi |
|
Message type |
Nilai: scheduled message |
|
Message ID |
Identifikasi unik untuk pesan tersebut. |
|
Queue |
Nama antrian yang berisi pesan tersebut. |
|
Retention period |
Durasi penyimpanan maksimum. Sesuai dengan atribut |
|
Visibility timeout |
Durasi pesan yang telah diambil tetap tidak terlihat oleh konsumen lain. Sesuai dengan atribut |
|
Delivery delay |
Waktu dalam detik untuk menunda pengiriman pesan. |
|
Scheduled delivery time |
Waktu spesifik ketika pesan akan tersedia untuk dikonsumsi. |
Konsumsi
Jejak konsumsi pesan antrian dikelompokkan menjadi sesi konsumsi, masing-masing diidentifikasi oleh ReceiptHandle.
|
Parameter |
Deskripsi |
|
Result |
Hasil akhir sesi konsumsi. Nilai yang mungkin termasuk:
|
|
Consumer IP |
Alamat IP client yang menerima atau mengoperasikan pesan tersebut. |
|
AccessKey |
AccessKey yang digunakan untuk mengoperasikan pesan tersebut. |
|
ReceiptHandle |
Handle pesan, digunakan untuk menghapus pesan atau mengubah masa visibility timeout-nya. |
|
Operation Time |
Waktu server saat operasi dilakukan. |
|
Operation |
Operasi API. Nilai yang mungkin termasuk:
|
-
Satu pesan dapat memiliki beberapa nilai
ReceiptHandlekarena handle baru dihasilkan setiap kali Anda memanggilReceiveMessageatauBatchReceiveMessage. -
Jika konsumen menghapus pesan sebelum masa visibility timeout-nya berakhir, hasil sesi konsumsi adalah Success.
-
Jika konsumen menerima pesan tetapi tidak menghapusnya, pesan tersebut dapat dikonsumsi lagi setelah masa visibility timeout-nya berakhir. Penerimaan ulang pesan tersebut menghasilkan
ReceiptHandlebaru. -
Mengoperasikan pesan dengan
ReceiptHandleyang telah kedaluwarsa akan mengembalikan error 404.
Jejak pesan topik
Jejak pesan topik mencakup tiga bagian: informasi pengiriman, informasi pencocokan langganan, dan informasi push.
Informasi pengiriman
Pengiriman standar
|
Parameter |
Deskripsi |
|
Message source |
Produsen menerbitkan pesan langsung ke topik. |
|
Method |
Jenis operasi API: PublishMessage |
|
Producer IP |
Alamat IP client yang menerbitkan pesan tersebut. |
|
AccessKey |
AccessKey yang digunakan untuk menerbitkan pesan tersebut. |
|
Send time |
Waktu server saat pesan tiba di topik. |
|
Result |
Hasil operasi penerbitan. Menampilkan "Success" atau pesan error spesifik. |
Layanan cloud lainnya
Dihasilkan ketika layanan cloud lain menerbitkan pesan ke topik.
|
Parameter |
Deskripsi |
|
Message source |
Menunjukkan bahwa pesan berasal dari layanan cloud lain. |
|
Method |
Jenis operasi API: PublishMessage |
|
Send time |
Waktu pesan diterbitkan ke topik. |
|
Result |
Hasil operasi penerbitan. Menampilkan "Success" atau pesan error spesifik. |
Pencocokan langganan
Ketika topik menerima pesan, topik tersebut mencocokkan langganan berdasarkan FilterTag dan mendorong pesan ke setiap langganan yang cocok.
|
Parameter |
Deskripsi |
|
Message ID |
Identifikasi unik pesan tersebut. |
|
Tag |
Tag pesan, digunakan untuk pemfilteran langganan. |
|
Subscription name |
Nama langganan yang cocok. |
|
Subscription type |
Jenis endpoint langganan. Nilai yang mungkin termasuk:
|
Informasi push
Langganan antrian
|
Parameter |
Deskripsi |
|
Message ID |
ID baru yang diberikan kepada pesan setelah masuk ke antrian. |
|
Consumption result |
Menunjukkan apakah push berhasil. Menampilkan "Success" atau pesan error spesifik. |
|
Push time |
Waktu push dimulai. |
|
Processing duration |
Durasi push, dalam milidetik. |
Langganan lainnya
|
Parameter |
Deskripsi |
|
Push result |
Kode status dan hasil push, seperti:
|
|
Push time |
Waktu push dimulai. |
|
Processing duration |
Durasi push, dalam milidetik. |
Batasan penggunaan
-
Message Trace: Message Trace dinonaktifkan secara default. Anda dapat mengaktifkannya di halaman Message Trace.
-
Rentang waktu kueri: Kueri dapat mencakup maksimal 3 hari dan harus dimulai dalam 15 hari terakhir.
Penagihan
Detail penagihan: Biaya jejak pesan.
Periode retensi jejak pesan
Data jejak pesan disimpan selama 15 hari, setelah itu secara otomatis dihapus dan tidak dapat dikueri lagi.
Metode kueri
ApsaraMQ for MNS menyediakan lima metode untuk mengkueri jejak pesan:
|
Metode kueri |
Kasus penggunaan |
Hasil |
|
Query by message ID |
Anda mengetahui ID pesan dan ingin menemukan jejak lengkap pesan tersebut. |
Mengembalikan satu jejak pesan. |
|
Query by request ID |
Anda mengetahui ID permintaan untuk panggilan API dan ingin menemukan pesan-pesan yang terlibat. |
Mengembalikan jejak pesan yang terkait dengan permintaan tersebut. |
|
Query by queue name |
Anda ingin melihat semua jejak pesan untuk suatu antrian dalam periode waktu tertentu. |
Mengembalikan jejak pesan untuk antrian tersebut dalam rentang waktu yang ditentukan. |
|
Query by topic name |
Anda ingin melihat semua jejak pesan untuk suatu topik dalam periode waktu tertentu. |
Mengembalikan jejak pesan untuk topik tersebut dalam rentang waktu yang ditentukan. |
|
Query by subscription name |
Anda ingin melihat semua jejak pesan yang didorong ke langganan dalam periode waktu tertentu. |
Mengembalikan jejak pesan untuk pesan yang didorong ke langganan tersebut dalam rentang waktu yang ditentukan. |
-
Jika Anda mengetahui ID pesan, gunakan Query by message ID untuk mendapatkan hasil yang cepat dan tepat.
-
Untuk troubleshooting masalah pesan dalam periode waktu tertentu, gunakan Query by queue name, Query by topic name, atau Query by subscription name.
-
Gunakan Query by request ID untuk troubleshooting masalah panggilan API yang terkait dengan pengiriman batch atau konsumsi batch.
Prosedur
Kueri jejak pesan
-
Di panel navigasi kiri, pilih .
Di bilah navigasi atas, pilih wilayah.
-
Klik Off untuk mengaktifkan jejak pesan.
-
Di halaman Message Trace, pilih metode kueri dan masukkan kriteria pencarian.
-
Query by Message ID: Masukkan ID pesan dan klik Query.
-
Query by RequestID: Masukkan RequestID dari permintaan API dan klik Query.
-
Query by Queue Name: Pilih nama antrian, pilih waktu mulai dalam 15 hari terakhir (durasi tidak boleh melebihi 3 hari), lalu klik Query.
-
Query by Topic Name: Pilih nama topik, pilih waktu mulai dalam 15 hari terakhir (durasi tidak boleh melebihi 3 hari), lalu klik Query.
-
Query by Subscription Name: Pilih topik dan nama langganan, pilih waktu mulai dalam 15 hari terakhir (durasi tidak boleh melebihi 3 hari), lalu klik Query.
-
-
Di hasil kueri, temukan pesan target, lalu di kolom Actions, klik Details.
-
Halaman detail jejak pesan menampilkan jejak lengkap pesan tersebut.
-
Detail jejak pesan antrian: Mencakup Informasi Pengiriman, Informasi Pesan, dan Informasi Konsumsi.
-
Informasi Pengiriman: Mencakup sumber pesan, metode pengiriman, alamat IP produsen, AccessKey, waktu kedatangan, dan hasil pengiriman.
-
Informasi Pesan: Mencakup ID pesan, nama antrian, periode retensi, visibility timeout, dan lainnya. Untuk pesan terjadwal, durasi penundaan dan waktu pengiriman terjadwal juga ditampilkan.
-
Informasi Konsumsi: Catatan konsumsi pesan dikelompokkan berdasarkan ReceiptHandle. Perluas ReceiptHandle untuk melihat semua operasi dalam sesi konsumsi tersebut, termasuk waktu, alamat IP konsumen, dan hasil penerimaan, penghapusan, serta perubahan visibility pesan.
-
-
Detail jejak pesan topik: Mencakup Informasi Pengiriman, Informasi Pencocokan Langganan, dan Informasi Push.
-
Informasi Pengiriman: Mencakup metode pengiriman, alamat IP produsen, AccessKey, waktu kedatangan, dan hasil pengiriman.
-
Informasi Pencocokan Langganan: Mencakup ID pesan, tag, nama langganan yang cocok, dan jenis langganan.
-
Informasi Push: Mencakup hasil push, waktu push, dan lainnya untuk setiap langganan. Untuk langganan antrian, ID pesan baru setelah push ditampilkan. Untuk langganan HTTP, email, atau SMS, kode status push dan durasi pemrosesan ditampilkan.
-
-
-
(Opsional) Untuk melihat jejak pesan setelah pesan didorong ke antrian oleh langganan antrian, klik tautan Message ID di bagian Informasi Push untuk melihat detail jejak pesan antrian yang sesuai.
Halaman ini menampilkan Informasi Pengiriman (produsen, metode, waktu, hasil), Informasi Pesan (jenis pesan, daftar langganan), dan Informasi Konsumsi (ID pesan, hasil konsumsi, waktu push, durasi pemrosesan).
FAQ
T: Mengapa saya tidak dapat menemukan jejak pesan?
J: Kemungkinan penyebabnya meliputi:
-
Data jejak pesan dihapus setelah 15 hari.
-
Rentang waktu yang ditentukan salah. Coba perluas rentang waktunya.
-
ID pesan atau RequestID dimasukkan salah. Periksa ID tersebut dan coba kueri lagi.
T: Apa arti status 'Not Responded' dalam jejak pesan?
J: Konsumen menerima pesan tetapi tidak menghapusnya atau mengubah masa visibility timeout-nya. Ketika masa timeout berakhir, pesan tersebut tersedia kembali. Periksa aplikasi konsumen Anda untuk memastikan pesan diproses dan dihapus dengan benar.
T: Mengapa satu pesan memiliki banyak ReceiptHandle?
J: Setiap panggilan ReceiveMessage atau BatchReceiveMessage menghasilkan ReceiptHandle baru. Jika pesan diambil beberapa kali (misalnya, setelah masa visibility timeout-nya berakhir), setiap pengambilan menghasilkan ReceiptHandle yang berbeda.
T: Apakah pelacakan pesan memengaruhi kinerja pengiriman dan penerimaan pesan?
J: Tidak. Pencatatan jejak bersifat asinkron dan tidak memengaruhi kinerja atau keandalan pengiriman/penerimaan pesan. Kegagalan pencatatan tidak berdampak pada operasi normal.