CloudWatch Metrik yang tersedia untuk Amazon SQS - Amazon Simple Queue Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

CloudWatch Metrik yang tersedia untuk Amazon SQS

Amazon SQS mengirimkan metrik berikut ke. CloudWatch

catatan

Untuk beberapa metrik, hasilnya adalah perkiraan karena arsitektur terdistribusi Amazon SQS. Dalam kebanyakan kasus, hitungan harus mendekati jumlah sebenarnya dari pesan dalam antrian.

Metrik Amazon SQS

Amazon SQS secara otomatis menerbitkan metrik operasional ke CloudWatchAmazon di bawah namespace. AWS/SQS Metrik ini membantu Anda memantau kesehatan dan kinerja antrian. Karena sifat terdistribusi SQS, banyak nilai perkiraan, tetapi cukup akurat untuk sebagian besar keputusan operasional.

catatan
  • Semua metrik memancarkan nilai non-negatif hanya ketika antrian aktif.

  • Beberapa metrik (sepertiSentMessageSize) tidak dipancarkan sampai setidaknya satu pesan dikirim.

Metrik Deskripsi Unit Perilaku pelaporan Catatan kunci
ApproximateAgeOfOldestMessage Usia pesan tertua yang belum diproses dalam antrian.

Detik

Dilaporkan jika antrian berisi setidaknya satu pesan aktif.
  • Untuk antrian standar, jika pesan diterima tiga kali atau lebih dan tidak dihapus, SQS memindahkannya ke bagian belakang antrian. Metrik kemudian mencerminkan usia pesan berikutnya yang belum melebihi ambang penerimaan. Penataan ulang ini terjadi bahkan ketika kebijakan redrive diberlakukan.

  • Pesan pil racun (yang berulang kali diterima tetapi tidak pernah dihapus) dikecualikan dari metrik ini sampai berhasil diproses.

  • Ketika pesan dipindahkan ke DLQ setelah melebihimaxReceiveCount, usia akan diatur ulang. Dalam hal ini, metrik DLQ mencerminkan waktu pesan dipindahkan—bukan saat awalnya dikirim.

  • Antrian FIFO tidak menyusun ulang pesan untuk menjaga ketertiban. Pesan yang gagal memblokir grup pesannya hingga dihapus atau kedaluwarsa. Jika DLQ dikonfigurasi, pesan dikirim ke sana setelah ambang penerimaan terpenuhi.

ApproximateNumberOfGroupsWithInflightMessages Hanya untuk FIFO. Jumlah grup pesan dengan satu atau beberapa pesan dalam penerbangan.

Hitungan

Dilaporkan jika antrian FIFO aktif.
  • Pesan dianggap dalam penerbangan setelah diterima dari antrian oleh konsumen tetapi belum dihapus atau kedaluwarsa.

  • Metrik ini membantu Anda memecahkan masalah dan mengoptimalkan throughput antrian FIFO. Nilai tinggi biasanya menunjukkan konkurensi yang kuat.

  • Jika antrian memiliki backlog besar dan nilai ini tetap rendah, pertimbangkan untuk menskalakan konsumen atau menambah jumlah grup pesan aktif.

  • Untuk batas throughput dan dalam penerbangan, lihat. Kuota Amazon SQS

ApproximateNumberOfMessagesDelayed

Jumlah pesan dalam antrian yang tertunda dan tidak segera tersedia untuk pengambilan.

Hitungan

Dilaporkan jika pesan tertunda ada dalam antrian.
  • Berlaku untuk antrian yang dikonfigurasi dengan penundaan default dan pesan individual yang dikirim dengan DelaySeconds parameter.

  • Pesan yang tertunda tetap tersembunyi dari konsumen sampai periode penundaan mereka berakhir, yang dapat memengaruhi backlog atau throughput antrian yang dirasakan.

ApproximateNumberOfMessagesNotVisible Jumlah pesan dalam penerbangan yang telah diterima tetapi belum dihapus atau kedaluwarsa.

Hitungan

Dilaporkan jika ada pesan dalam penerbangan.
  • Pesan memasuki status dalam penerbangan setelah dikirim ke konsumen melalui ReceiveMessageAPI.

  • Pesan-pesan ini disembunyikan sementara dari konsumen lain selama jendela batas waktu visibilitas.

  • Gunakan metrik ini untuk melacak keterlambatan pemrosesan pesan atau konsumen yang macet.

ApproximateNumberOfMessagesVisible Jumlah pesan yang saat ini tersedia untuk pengambilan dan pemrosesan.

Hitungan

Dilaporkan jika antrian aktif.
  • Mencerminkan backlog pemrosesan saat ini dalam antrian.

  • Tidak ada batasan keras pada berapa banyak pesan yang dapat terakumulasi, tetapi mereka tunduk pada periode retensi antrian yang dikonfigurasi.

  • Nilai tinggi secara konsisten dapat mengindikasikan konsumen yang kurang menyediakan atau logika pemrosesan yang macet.

NumberOfEmptyReceives¹ Jumlah panggilan ReceiveMessageAPI yang tidak mengembalikan pesan.

Hitungan

Dilaporkan selama operasi penerimaan.
  • Metrik ini dapat membantu mengidentifikasi inefisiensi dalam perilaku polling atau contoh konsumen yang kurang dimanfaatkan.

  • Nilai tinggi dapat terjadi ketika antrian kosong, konsumen menggunakan polling pendek, atau pesan diproses lebih cepat daripada yang dihasilkan.

  • Ini bukan indikator yang tepat dari status antrian. Ini mencerminkan perilaku sisi layanan dan mungkin termasuk percobaan ulang.

NumberOfDeduplicatedSentMessages Hanya untuk FIFO. Jumlah pesan terkirim yang di-deduplikasi dan tidak ditambahkan ke antrian.

Hitungan

Dilaporkan jika MessageDeduplicationId nilai duplikat atau konten terdeteksi.
  • SQS menghapus duplikat pesan berdasarkan hashing MessageDeduplicationId atau berbasis konten (jika diaktifkan).

  • Nilai tinggi dapat menunjukkan bahwa produser berulang kali mengirim pesan yang sama dalam jendela deduplikasi 5 menit.

  • Gunakan metrik ini untuk memecahkan masalah logika produsen yang berlebihan atau mengonfirmasi bahwa deduplikasi berfungsi sebagaimana dimaksud.

NumberOfMessagesDeleted¹

Jumlah pesan yang berhasil dihapus dari antrian.

Hitungan

Dilaporkan untuk setiap permintaan penghapusan dengan pegangan tanda terima yang valid.
  • Metrik ini menghitung semua operasi penghapusan yang berhasil—bahkan jika pesan yang sama dihapus lebih dari sekali.

  • Alasan umum untuk higher-than-expected nilai meliputi:

    • Beberapa penghapusan pesan yang sama menggunakan pegangan tanda terima yang berbeda, setelah batas waktu visibilitas berakhir dan pesan diterima lagi.

    • Duplikat menghapus menggunakan pegangan tanda terima yang sama, yang masih mengembalikan status sukses dan meningkatkan metrik.

  • Gunakan metrik ini untuk melacak keberhasilan pemrosesan pesan, tetapi jangan memperlakukannya sebagai jumlah pasti dari pesan unik yang dihapus.

NumberOfMessagesReceived¹ Jumlah pesan yang dikembalikan oleh ReceiveMessageAPI.

Hitungan

Dilaporkan selama operasi penerimaan.
  • Ini termasuk semua pesan yang dikembalikan ke konsumen, termasuk yang kemudian dikembalikan ke antrian karena kedaluwarsa batas waktu visibilitas.

  • Satu pesan dapat diterima beberapa kali jika tidak dihapus, yang dapat menyebabkan metrik ini melebihi jumlah pesan yang dikirim.

  • Gunakan ini untuk melacak aktivitas konsumen, tetapi jangan memperlakukannya sebagai hitungan pesan unik yang diproses.

NumberOfMessagesSent¹ Jumlah pesan yang berhasil ditambahkan ke antrian.

Hitungan

Dilaporkan untuk setiap pengiriman manual yang berhasil.
  • Panggilan manual ke SendMessage atau SendMessageBatch dihitung, termasuk yang menargetkan DLQ secara langsung.

  • Pesan yang secara otomatis dipindahkan ke DLQ setelah melebihi tidak termasuk dalam maxReceiveCount metrik ini.

  • Akibatnya, NumberOfMessagesSent mungkin lebih rendah dari NumberOfMessagesReceived —terutama jika kebijakan redrive memindahkan banyak pesan ke DLQs belakang layar.

SentMessageSize¹

Ukuran pesan berhasil dikirim ke antrian.

Byte

Tidak dipancarkan sampai setidaknya satu pesan terkirim.
  • Metrik ini tidak akan muncul di CloudWatch konsol sampai antrian menerima pesan pertamanya.

  • Gunakan metrik ini untuk melacak ukuran setiap pesan dalam byte. Ini berguna untuk menganalisis tren payload atau memperkirakan biaya throughput.

  • Ukuran pesan maksimum untuk SQS adalah 1 MiB.

ApproximateNumberOfNoisyGroups

Jumlah grup pesan yang dianggap berisik dalam antrian yang adil. Grup pesan yang berisik mewakili penyewa tetangga yang berisik dari antrian multi-penyewa.

Hitungan

Nilai non-negatif dilaporkan jika antrian aktif.
  • Membantu mengidentifikasi potensi masalah tetangga yang bising di lingkungan multi-penyewa dengan melacak kelompok pesan yang menggunakan sumber daya yang tidak proporsional.

  • Gunakan metrik ini untuk menyetel alarm yang memicu ketika jumlah grup berisik melebihi ambang batas yang dapat diterima, yang menunjukkan potensi masalah keadilan antrian.

ApproximateNumberOfMessagesVisibleInQuietGroups

Jumlah pesan yang terlihat tidak termasuk pesan dari grup pesan yang berisik.

Hitungan

Nilai non-negatif dilaporkan jika antrian aktif.
  • Menyediakan visibilitas ke backlog antrian untuk grup pesan standar, tidak termasuk pesan dari tetangga yang berisik.

  • Membantu mengidentifikasi backlog pemrosesan yang sebenarnya untuk grup pesan khas dengan menyaring dampak tetangga yang berisik.

ApproximateNumberOfMessagesNotVisibleInQuietGroups Jumlah pesan dalam penerbangan tidak termasuk pesan dari grup pesan yang berisik.

Hitungan

Nilai non-negatif dilaporkan jika antrian aktif.
  • Melacak pesan dalam penerbangan (sedang diproses tetapi belum dihapus) dari grup pesan yang berperilaku baik.

  • Gunakan metrik ini untuk memantau throughput pemrosesan grup pesan normal dan mendeteksi kemacetan pemrosesan yang tidak disebabkan oleh tetangga yang berisik.

ApproximateNumberOfMessagesDelayedInQuietGroups Jumlah pesan yang tidak termasuk pesan dari grup pesan berisik yang tertunda dan tidak tersedia untuk dibaca segera. Pesan tertunda terjadi ketika antrian dikonfigurasi sebagai antrian penundaan atau ketika pesan telah dikirim dengan parameter penundaan.

Hitungan

Nilai non-negatif dilaporkan jika antrian aktif.
  • Membantu memantau backlog pesan yang tertunda dari grup pesan dengan pola throughput normal atau yang diharapkan (sebagai lawan dari grup bervolume tinggi atau berisik)

  • Berguna untuk memahami persyaratan pemrosesan masa depan dan perencanaan kapasitas untuk beban kerja yang khas.

ApproximateAgeOfOldestMessageInQuietGroups Usia pesan tertua yang tidak dihapus dalam antrian tidak termasuk pesan dari grup pesan berisik.

Detik

Nilai non-negatif dilaporkan jika antrian aktif.
  • Digunakan untuk memantau kepatuhan SLA dan mendeteksi kemacetan pemrosesan dalam grup pesan dengan pola throughput normal atau yang diharapkan (sebagai lawan dari grup pesan bervolume tinggi atau berisik yang mungkin mengubah metrik).

  • Gunakan metrik ini untuk menyetel alarm untuk batas waktu pemrosesan pesan yang mengabaikan pesan berumur buatan dari tetangga yang berisik.

¹ Metrik ini mencerminkan aktivitas tingkat sistem dan dapat mencakup percobaan ulang, duplikat, atau pesan tertunda. Jangan gunakan jumlah mentah untuk memperkirakan status antrian waktu nyata tanpa memperhitungkan perilaku siklus hidup pesan.

Antrian huruf mati () dan metrik DLQs CloudWatch

Saat bekerja dengan DLQs, penting untuk memahami bagaimana metrik Amazon SQS berperilaku:

  • NumberOfMessagesSent— Metrik ini berperilaku berbeda untuk DLQs:

    • Pengiriman Manual — Pesan yang dikirim secara manual ke DLQ ditangkap oleh metrik ini.

    • Automatic Recrive — Pesan secara otomatis dipindahkan ke DLQ karena kegagalan pemrosesan tidak ditangkap oleh metrik ini. Akibatnya, NumberOfMessagesReceived metrik NumberOfMessagesSent dan mungkin menunjukkan perbedaan untuk. DLQs

  • Metrik yang Direkomendasikan untuk DLQs — Untuk memantau status DLQ, gunakan metrik. ApproximateNumberOfMessagesVisible Metrik ini menunjukkan jumlah pesan yang saat ini tersedia untuk diproses di DLQ.

Antrian dan metrik yang adil CloudWatch

Saat Anda menggunakan antrian wajar, Amazon SQS memancarkan metrik tambahan berikut:

  • ApproximateNumberOfNoisyGroups

  • ApproximateNumberOfMessagesVisibleInQuietGroups

  • ApproximateNumberOfMessagesNotVisibleInQuietGroups

  • ApproximateNumberOfMessagesDelayedInQuietGroups

  • ApproximateAgeOfOldestMessageInQuietGroups

catatan

Setiap QuietGroup metrik adalah subset dari Approximate metrik tingkat antrian standar yang setara, tetapi tidak termasuk pesan dari grup tetangga yang bising.

Kelompok berisik

Grup pesan yang berisik mewakili penyewa tetangga yang berisik dari antrian multi-penyewa.

Grup yang tenang

Grup pesan tidak termasuk grup yang berisik.

Mengamati perilaku antrian adil SQS

Untuk memantau efek antrian adil Amazon SQS, Anda dapat membandingkan Approximate..InQuietGroups metrik dengan metrik tingkat antrian standar. Selama lonjakan lalu lintas untuk penyewa tertentu, metrik tingkat antrian umum dapat mengungkapkan peningkatan backlog atau usia pesan yang lebih tua. Namun, melihat grup diam secara terpisah, Anda dapat mengidentifikasi bahwa sebagian besar grup pesan atau penyewa yang tidak berisik tidak terpengaruh, dan memberikan perkiraan jumlah total grup pesan yang terkena dampak.

Meskipun metrik baru ini memberikan gambaran yang baik tentang perilaku antrian adil Amazon SQS, akan bermanfaat untuk memahami penyewa spesifik mana yang menyebabkan beban. Wawasan CloudWatch kontributor Amazon memungkinkan Anda melihat metrik tentang kontributor Top-n, jumlah total kontributor unik, dan penggunaannya. Ini sangat membantu dalam skenario di mana Anda berurusan dengan ribuan penyewa yang sebaliknya akan mengarah pada data kardinalitas tinggi (dan biaya) saat memancarkan metrik tradisional.

Untuk contoh konfigurasi pemantauan untuk antrian yang adil, lihat sampel di. GitHub

Dimensi untuk metrik Amazon SQS

Metrik Amazon SQS CloudWatch menggunakan satu dimensi:. QueueName Semua data metrik dikelompokkan dan disaring dengan nama antrian.

Kiat pemantauan

Pantau SQS secara efektif menggunakan metrik utama dan CloudWatch alarm untuk mendeteksi backlog antrian, mengoptimalkan kinerja, dan tetap dalam batas layanan.

  • CloudWatch Atur alarm berdasarkan ApproximateNumberOfMessagesVisible untuk menangkap pertumbuhan backlog.

  • Monitor NumberOfEmptyReceives untuk menyetel frekuensi polling dan mengurangi biaya API.

  • Gunakan ApproximateNumberOfGroupsWithInflightMessages dalam antrian FIFO untuk mendiagnosis batas throughput.

  • Tinjau kuota SQS untuk memahami ambang metrik dan batas layanan.