View a markdown version of this page

Pantau Perpustakaan Produsen Kinesis dengan Amazon CloudWatch - Amazon Kinesis Data Streams

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

Pantau Perpustakaan Produsen Kinesis dengan Amazon CloudWatch

Amazon Kinesis Producer Library (KPL) untuk Amazon Kinesis Data Streams menerbitkan CloudWatch metrik Amazon khusus atas nama Anda. Anda dapat melihat metrik ini dengan menavigasi ke CloudWatch konsol dan memilih Metrik K ustom. Untuk informasi selengkapnya tentang metrik khusus, lihat Publikasikan Metrik Kustom di Panduan CloudWatch Pengguna Amazon.

Ada biaya nominal untuk metrik yang diunggah CloudWatch oleh KPL; khususnya, biaya Amazon CloudWatch Custom Metrics dan Amazon CloudWatch API Requests berlaku. Untuk informasi selengkapnya, lihat CloudWatch Harga Amazon. Pengumpulan metrik lokal tidak dikenakan CloudWatch biaya.

Metrik, dimensi, dan ruang nama

Anda dapat menentukan nama aplikasi saat meluncurkan KPL, yang kemudian digunakan sebagai bagian dari namespace saat mengunggah metrik. Ini opsional; KPL memberikan nilai default jika nama aplikasi tidak disetel.

Anda juga dapat mengonfigurasi KPL untuk menambahkan dimensi tambahan sewenang-wenang ke metrik. Ini berguna jika Anda ingin data berbutir lebih halus dalam metrik Anda. CloudWatch Misalnya, Anda dapat menambahkan nama host sebagai dimensi, yang kemudian memungkinkan Anda mengidentifikasi distribusi beban yang tidak merata di seluruh armada Anda. Semua pengaturan konfigurasi KPL tidak dapat diubah, jadi Anda tidak dapat mengubah dimensi tambahan ini setelah instance KPL diinisialisasi.

Tingkat metrik dan granularitas

Ada dua opsi untuk mengontrol jumlah metrik yang diunggah ke CloudWatch:

tingkat metrik

Ini adalah ukuran kasar tentang seberapa penting metrik. Setiap metrik diberi level. Saat Anda menetapkan level, metrik dengan level di bawahnya tidak dikirim ke CloudWatch. Levelnya adalahNONE,SUMMARY, danDETAILED. Pengaturan default adalahDETAILED; yaitu, semua metrik. NONEberarti tidak ada metrik sama sekali, jadi tidak ada metrik yang benar-benar ditetapkan ke level itu.

granularitas

Ini mengontrol apakah metrik yang sama dipancarkan pada tingkat granularitas tambahan. Levelnya adalahGLOBAL,STREAM, danSHARD. Pengaturan default adalahSHARD, yang berisi metrik paling terperinci.

Ketika SHARD dipilih, metrik dipancarkan dengan nama aliran dan ID pecahan sebagai dimensi. Selain itu, metrik yang sama juga dipancarkan hanya dengan dimensi nama aliran, dan metrik tanpa nama aliran. Ini berarti bahwa, untuk metrik tertentu, dua aliran dengan dua pecahan masing-masing akan menghasilkan tujuh CloudWatch metrik: satu untuk setiap pecahan, satu untuk setiap aliran, dan satu keseluruhan; semua menggambarkan statistik yang sama tetapi pada tingkat granularitas yang berbeda. Untuk ilustrasi, lihat diagram berikut.

Tingkat perincian yang berbeda membentuk hierarki, dan semua metrik dalam sistem membentuk pohon, berakar pada nama metrik:

MetricName (GLOBAL): Metric X Metric Y | | ----------------- ------------ | | | | StreamName (STREAM): Stream A Stream B Stream A Stream B | | -------- --------- | | | | ShardID (SHARD): Shard 0 Shard 1 Shard 0 Shard 1

Tidak semua metrik tersedia di level shard; beberapa pada dasarnya adalah tingkat aliran atau global. Ini tidak diproduksi pada tingkat pecahan, bahkan jika Anda telah mengaktifkan metrik tingkat shard-( Metric Y dalam diagram sebelumnya).

Ketika Anda menentukan dimensi tambahan, Anda harus memberikan nilai untuktuple:<DimensionName, DimensionValue, Granularity>. Granularitas digunakan untuk menentukan di mana dimensi kustom dimasukkan dalam hierarki: GLOBAL berarti bahwa dimensi tambahan dimasukkan setelah nama metrik, STREAM berarti dimasukkan setelah nama aliran, dan SHARD berarti dimasukkan setelah ID pecahan. Jika beberapa dimensi tambahan diberikan per tingkat granularitas, mereka dimasukkan dalam urutan yang diberikan.

Akses lokal dan CloudWatch unggahan Amazon

Metrik untuk instance KPL saat ini tersedia secara lokal secara real time; Anda dapat menanyakan KPL kapan saja untuk mendapatkannya. KPL secara lokal menghitung jumlah, rata-rata, minimum, maksimum, dan jumlah setiap metrik, seperti pada CloudWatch.

Anda bisa mendapatkan statistik yang kumulatif dari awal program hingga saat ini, atau menggunakan jendela bergulir selama N detik terakhir, di mana N adalah bilangan bulat antara 1 dan 60.

Semua metrik tersedia untuk diunggah CloudWatch. Ini sangat berguna untuk mengumpulkan data di beberapa host, memantau, dan mengkhawatirkan. Fungsi ini tidak tersedia secara lokal.

Seperti dijelaskan sebelumnya, Anda dapat memilih metrik mana yang akan diunggah dengan tingkat metrik dan set elan perincian. Metrik yang tidak diunggah tersedia secara lokal.

Mengunggah titik data secara individual tidak dapat dipertahankan karena dapat menghasilkan jutaan unggahan per detik, jika lalu lintas tinggi. Untuk alasan ini, KPL menggabungkan metrik secara lokal ke dalam bucket 1 menit dan mengunggah objek statistik ke CloudWatch satu kali per menit, per metrik yang diaktifkan.

Daftar metrik

Metrik Deskripsi
UserRecordsReceived

Hitung berapa banyak catatan pengguna logis yang diterima oleh inti KPL untuk operasi put. Tidak tersedia di tingkat pecahan.

Tingkat metrik: Terinci

Unit: Jumlah

UserRecordsPending

Sampel berkala berapa banyak catatan pengguna yang saat ini tertunda. Catatan tertunda jika saat ini di-buffer dan menunggu untuk dikirim, atau dikirim dan dalam penerbangan ke layanan backend. Tidak tersedia di tingkat pecahan.

KPL menyediakan metode khusus untuk mengambil metrik ini di tingkat global bagi pelanggan untuk mengelola put rate mereka.

Tingkat metrik: Terinci

Unit: Jumlah

UserRecordsPut

Hitung berapa banyak catatan pengguna logis yang berhasil dimasukkan.

KPL mengeluarkan nol untuk catatan yang gagal. Hal ini memungkinkan rata-rata untuk memberikan tingkat keberhasilan, hitungan untuk memberikan total upaya, dan perbedaan antara hitungan dan jumlah untuk memberikan jumlah kegagalan.

Tingkat metrik: Ringkasan

Unit: Jumlah

UserRecordsDataPut

Byte dalam catatan pengguna logis berhasil dimasukkan.

Tingkat metrik: Terinci

Unit: Bita

KinesisRecordsPut

Hitung berapa banyak catatan Kinesis Data Streams berhasil dimasukkan (setiap catatan Kinesis Data Streams dapat berisi beberapa catatan pengguna).

KPL mengeluarkan nol untuk catatan yang gagal. Hal ini memungkinkan rata-rata untuk memberikan tingkat keberhasilan, hitungan untuk memberikan total upaya, dan perbedaan antara hitungan dan jumlah untuk memberikan jumlah kegagalan.

Tingkat metrik: Ringkasan

Unit: Jumlah

KinesisRecordsDataPut

Byte dalam catatan Kinesis Data Streams.

Tingkat metrik: Terinci

Unit: Bita

ErrorsByCode

Hitung setiap jenis kode kesalahan. Ini memperkenalkan dimensi tambahanErrorCode, selain dimensi normal seperti StreamName danShardId. Tidak setiap kesalahan dapat ditelusuri ke pecahan. Kesalahan yang tidak dapat dilacak hanya dipancarkan pada tingkat aliran atau global. Metrik ini menangkap informasi tentang hal-hal seperti pelambatan, perubahan peta pecahan, kegagalan internal, layanan tidak tersedia, batas waktu, dan sebagainya.

Kesalahan API Kinesis Data Streams dihitung satu kali per catatan Kinesis Data Streams. Beberapa catatan pengguna dalam catatan Kinesis Data Streams tidak menghasilkan beberapa hitungan.

Tingkat metrik: Ringkasan

Unit: Jumlah

AllErrors

Ini dipicu oleh kesalahan yang sama dengan Errors by Code, tetapi tidak membedakan antara tipe. Ini berguna sebagai monitor umum tingkat kesalahan tanpa memerlukan penjumlahan manual hitungan dari semua jenis kesalahan yang berbeda.

Tingkat metrik: Ringkasan

Unit: Jumlah

RetriesPerRecord

Jumlah percobaan ulang yang dilakukan per catatan pengguna. Nol dipancarkan untuk catatan yang berhasil dalam sekali percobaan.

Data dipancarkan pada saat catatan pengguna selesai (ketika berhasil atau tidak dapat lagi dicoba lagi). Jika waktu rekaman untuk hidup adalah nilai yang besar, metrik ini mungkin tertunda secara signifikan.

Tingkat metrik: Terinci

Unit: Jumlah

BufferingTime

Waktu antara catatan pengguna tiba di KPL dan berangkat ke backend. Informasi ini dikirimkan kembali ke pengguna berdasarkan per catatan, tetapi juga tersedia sebagai statistik agregat.

Tingkat metrik: Ringkasan

Satuan: Milidetik

Request Time

Waktu yang dibutuhkan untuk tampilPutRecordsRequests.

Tingkat metrik: Terinci

Satuan: Milidetik

User Records per Kinesis Record

Jumlah catatan pengguna logis yang digabungkan ke dalam satu catatan Kinesis Data Streams.

Tingkat metrik: Terinci

Unit: Jumlah

Amazon Kinesis Records per PutRecordsRequest

Jumlah rekaman Kinesis Data Streams digabungkan menjadi satuPutRecordsRequest. Tidak tersedia di tingkat pecahan.

Tingkat metrik: Terinci

Unit: Jumlah

User Records per PutRecordsRequest

Jumlah total catatan pengguna yang terkandung dalam aPutRecordsRequest. Ini kira-kira setara dengan produk dari dua metrik sebelumnya. Tidak tersedia di tingkat pecahan.

Tingkat metrik: Terinci

Unit: Jumlah