Misalnya, saya ingin memicu alarm CloudWatch untuk yang berikut:
Number of messages sent
- Number of messages deleted
> = 6
Di atas adalah untuk metrik AWS SQS. Dan saya ingin metrik itu memicu AWS Lambda jika alarm dimatikan.
Apakah ada cara saya bisa melakukannya? Jika tidak, maka apakah ada solusi [Bertujuan untuk paradigma tanpa server]
[Saya ingin melakukan itu, karena tidak ada metrik yang memberi tahu saya jumlah pesan yang saat ini (tersedia) dalam antrian]. Jadi, jika ada metrik yang bisa memberi saya itu, itu akan sangat membantu
Jawaban:
Untuk tujuan keseluruhan terakhir, saya akan
ApproximateNumberOfMessagesVisible
mengaktifkan alarm dari dokumentasi Cloudwatch di SQS ini:Untuk pertanyaan metrik terkomputasi yang lebih umum, saya akan menggunakan lambda berjalan secara prima, mengumpulkan metrik dari cloudwatch, mengerjakan matematika dan kembali ke cloudwatch.
Berikut ini adalah contoh lambda mengumpulkan data dari Cloudwatch untuk mendorong ke elasticsearch. Dengan contoh pada dokumentasi Anda harus dapat mendorong metrik kembali dari lambda.
Perlu diketahui bahwa memanggil cloudwatch API untuk mengumpulkan dan mendorong metrik memiliki biaya ketika Anda mendapatkan lebih dari 1 juta permintaan per bulan, ada batasan lain yang harus diperhatikan untuk menghindari melanggar anggaran / alur kerja Anda.
sumber
Approximate
di dalamnya. Kenapa kira-kira, ketika itu bisa memberi tahu persis jumlah pesan yang tersedia?Baru-baru ini AWS baru saja mengumumkan CloudWatch Metric Math yang harusnya sesuai untuk kasus penggunaan Anda.
Referensi:-
sumber