Menggunakan CloudWatch Alarm dengan Amazon Managed Service untuk Apache Flink - Layanan Terkelola untuk Apache Flink

Amazon Managed Service untuk Apache Flink sebelumnya dikenal sebagai Amazon Kinesis Data Analytics untuk Apache Flink.

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

Menggunakan CloudWatch Alarm dengan Amazon Managed Service untuk Apache Flink

Menggunakan alarm CloudWatch metrik Amazon, Anda menonton CloudWatch metrik selama periode waktu yang Anda tentukan. Alarm tersebut melakukan satu atau beberapa tindakan berdasarkan pada nilai metrik atau ekspresi relatif terhadap ambang batas selama beberapa periode waktu. Contoh tindakan adalah mengirim pemberitahuan ke topik Amazon Simple Notification Service (AmazonSNS).

Untuk informasi selengkapnya tentang CloudWatch alarm, lihat Menggunakan CloudWatch Alarm Amazon.

Bagian ini berisi alarm yang direkomendasikan untuk memantau Layanan Terkelola untuk aplikasi Apache Flink.

Tabel menjelaskan alarm yang direkomendasikan dan memiliki kolom berikut:

  • Metric Expression (Ekspresi Metrik): Metrik atau ekspresi metrik untuk menguji ambang.

  • Statistic (Statistik): Statistik yang digunakan untuk memeriksa metrik—misalnya, Rata-rata.

  • Threshold (Ambang): Menggunakan alarm ini mengharuskan Anda menentukan ambang yang menentukan batas performa aplikasi yang diharapkan. Anda perlu menentukan ambang ini dengan memantau aplikasi Anda dalam kondisi normal.

  • Description (Deskripsi): Penyebab yang mungkin memicu alarm ini, dan kemungkinan solusi untuk kondisi.

Ekspresi Metrik Statistik Ambang Deskripsi
downtime> 0 Rata-rata 0 Waktu henti yang lebih besar dari nol menunjukkan bahwa aplikasi telah gagal. Jika nilainya lebih besar dari 0, aplikasi tidak memproses data apa pun. Direkomendasikan untuk semua aplikasi. DowntimeMetrik mengukur durasi pemadaman. Waktu henti yang lebih besar dari nol menunjukkan bahwa aplikasi telah gagal. Untuk pemecahan masalah, lihat. Aplikasi dimulai ulang
RATE (numberOfFailedCheckpoints)> 0 Rata-rata 0 Metrik ini menghitung jumlah pos pemeriksaan yang gagal sejak aplikasi dimulai. Tergantung pada aplikasinya, itu bisa ditoleransi jika pos pemeriksaan gagal sesekali. Tetapi jika pos pemeriksaan secara teratur gagal, aplikasi tersebut kemungkinan tidak sehat dan perlu perhatian lebih lanjut. Kami merekomendasikan pemantauan RATE (numberOfFailedCheckpoints) untuk alarm pada gradien dan bukan pada nilai absolut. Direkomendasikan untuk semua aplikasi. Gunakan metrik ini untuk memantau kesehatan aplikasi dan kemajuan pos pemeriksaan. Aplikasi menyimpan data negara ke pos pemeriksaan saat sehat. Checkpointing dapat gagal karena batas waktu jika aplikasi tidak membuat kemajuan dalam memproses data input. Untuk pemecahan masalah, lihat. Waktu titik checkpointing
Operator.numRecordsOutPerSecond< ambang Rata-rata Jumlah minimum catatan yang dipancarkan dari aplikasi selama kondisi normal. Direkomendasikan untuk semua aplikasi. Jatuh di bawah ambang batas ini dapat menunjukkan bahwa aplikasi tidak membuat kemajuan yang diharapkan pada data input. Untuk pemecahan masalah, lihat. Throughput Terlalu Lambat
records_lag_max|millisbehindLatest> ambang Maksimum Latensi maksimum yang diharapkan selama kondisi normal. Jika aplikasi menggunakan Kinesis atau Kafka, metrik ini menunjukkan apakah aplikasi tertinggal dan perlu diskalakan untuk mengikuti beban saat ini. Ini adalah metrik generik yang baik yang mudah dilacak untuk semua jenis aplikasi. Tetapi itu hanya dapat digunakan untuk penskalaan reaktif, yaitu, ketika aplikasi sudah tertinggal. Direkomendasikan untuk semua aplikasi. Gunakan records_lag_max metrik untuk sumber Kafka, atau millisbehindLatest untuk sumber aliran Kinesis. Naik di atas ambang batas ini dapat menunjukkan bahwa aplikasi tidak membuat kemajuan yang diharapkan pada data input. Untuk pemecahan masalah, lihat. Throughput Terlalu Lambat
lastCheckpointDuration> ambang Maksimum Durasi pos pemeriksaan maksimum yang diharapkan selama kondisi normal. Memantau berapa banyak data yang disimpan dalam keadaan dan berapa lama waktu yang dibutuhkan untuk mengambil pos pemeriksaan. Jika pos pemeriksaan bertambah atau memakan waktu lama, aplikasi terus menghabiskan waktu untuk pos pemeriksaan dan memiliki lebih sedikit siklus untuk pemrosesan yang sebenarnya. Di beberapa titik, pos pemeriksaan mungkin tumbuh terlalu besar atau memakan waktu lama sehingga gagal. Selain memantau nilai absolut, pelanggan juga harus mempertimbangkan untuk memantau tingkat perubahan dengan RATE(lastCheckpointSize) danRATE(lastCheckpointDuration). Jika lastCheckpointDuration terus meningkat, naik di atas ambang batas ini dapat menunjukkan bahwa aplikasi tidak membuat kemajuan yang diharapkan pada data input, atau bahwa ada masalah dengan kesehatan aplikasi seperti tekanan balik. Untuk pemecahan masalah, lihat. Pertumbuhan negara tak terbatas
lastCheckpointSize> ambang Maksimum Ukuran pos pemeriksaan maksimum yang diharapkan selama kondisi normal. Memantau berapa banyak data yang disimpan dalam keadaan dan berapa lama waktu yang dibutuhkan untuk mengambil pos pemeriksaan. Jika pos pemeriksaan bertambah atau memakan waktu lama, aplikasi terus menghabiskan waktu untuk pos pemeriksaan dan memiliki lebih sedikit siklus untuk pemrosesan yang sebenarnya. Di beberapa titik, pos pemeriksaan mungkin tumbuh terlalu besar atau memakan waktu lama sehingga gagal. Selain memantau nilai absolut, pelanggan juga harus mempertimbangkan untuk memantau tingkat perubahan dengan RATE(lastCheckpointSize) danRATE(lastCheckpointDuration). Jika lastCheckpointSize terus meningkat, naik di atas ambang batas ini dapat menunjukkan bahwa aplikasi mengumpulkan data status. Jika data status menjadi terlalu besar, aplikasi dapat kehabisan memori saat pulih dari pos pemeriksaan, atau pemulihan dari pos pemeriksaan mungkin memakan waktu terlalu lama. Untuk pemecahan masalah, lihat. Pertumbuhan negara tak terbatas
heapMemoryUtilization> ambang Maksimum Ini memberikan indikasi yang baik tentang pemanfaatan sumber daya aplikasi secara keseluruhan dan dapat digunakan untuk penskalaan proaktif kecuali aplikasi terikat I/O. heapMemoryUtilizationUkuran maksimum yang diharapkan selama kondisi normal, dengan nilai yang disarankan 90 persen. Anda dapat menggunakan metrik ini untuk memantau pemanfaatan memori maksimum pengelola tugas di seluruh aplikasi. Jika aplikasi mencapai ambang ini, Anda perlu menyediakan lebih banyak sumber daya. Anda melakukan ini dengan mengaktifkan penskalaan otomatis atau meningkatkan paralelisme aplikasi. Untuk informasi lebih lanjut tentang meningkatkan sumber daya, lihatPenskalaan.
cpuUtilization> ambang Maksimum Ini memberikan indikasi yang baik tentang pemanfaatan sumber daya aplikasi secara keseluruhan dan dapat digunakan untuk penskalaan proaktif kecuali aplikasi terikat I/O. cpuUtilizationUkuran maksimum yang diharapkan selama kondisi normal, dengan nilai yang disarankan 80 persen. Anda dapat menggunakan metrik ini untuk memantau CPU pemanfaatan maksimum pengelola tugas di seluruh aplikasi. Jika aplikasi mencapai ambang batas ini, Anda perlu menyediakan lebih banyak sumber daya Anda melakukan ini dengan mengaktifkan penskalaan otomatis atau meningkatkan paralelisme aplikasi. Untuk informasi lebih lanjut tentang meningkatkan sumber daya, lihatPenskalaan.
threadsCount> ambang Maksimum threadsCountUkuran maksimum yang diharapkan selama kondisi normal. Anda dapat menggunakan metrik ini untuk melihat kebocoran utas di pengelola tugas di seluruh aplikasi. Jika metrik ini mencapai ambang batas ini, periksa kode aplikasi Anda untuk utas yang dibuat tanpa ditutup.
(oldGarbageCollectionTime * 100)/60_000 over 1 min period')> ambang Maksimum oldGarbageCollectionTimeDurasi maksimum yang diharapkan. Kami merekomendasikan untuk menetapkan ambang batas sehingga waktu pengumpulan sampah tipikal adalah 60 persen dari ambang batas yang ditentukan, tetapi ambang batas yang benar untuk aplikasi Anda akan bervariasi. Jika metrik ini terus meningkat, ini dapat menunjukkan bahwa ada kebocoran memori di pengelola tugas di seluruh aplikasi.
RATE(oldGarbageCollectionCount) > ambang Maksimum Maksimum yang diharapkan oldGarbageCollectionCount dalam kondisi normal. Ambang batas yang benar untuk aplikasi Anda akan bervariasi. Jika metrik ini terus meningkat, ini dapat menunjukkan bahwa ada kebocoran memori di pengelola tugas di seluruh aplikasi.
Operator.currentOutputWatermark - Operator.currentInputWatermark > ambang Minimum Peningkatan watermark minimum yang diharapkan dalam kondisi normal. Ambang batas yang benar untuk aplikasi Anda akan bervariasi. Jika metrik ini terus meningkat, ini dapat menunjukkan bahwa aplikasi sedang memproses peristiwa yang semakin lama, atau bahwa subtugas hulu belum mengirim tanda air dalam waktu yang semakin lama.