Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memantau Perpustakaan Klien Kinesis dengan Amazon CloudWatch
Kinesis Client Library (KCL) untuk Amazon Kinesis Data Streams menerbitkan CloudWatch metrik Amazon khusus atas nama Anda, menggunakan nama aplikasi KCL Anda sebagai namespace. Anda dapat melihat metrik ini dengan menavigasi ke CloudWatch konsol
Ada biaya nominal untuk metrik yang diunggah CloudWatch oleh KCL; khususnya, biaya Amazon C CloudWatch ustom Metrics dan Amazon CloudWatch API Requests berlaku. Untuk informasi selengkapnya, lihat CloudWatch Harga Amazon
Metrik dan namespace
Namespace yang digunakan untuk mengunggah metrik adalah nama aplikasi yang Anda tentukan saat meluncurkan KCL.
Tingkat dan dimensi metrik
Ada dua opsi untuk mengontrol metrik mana yang diunggah ke CloudWatch:
- tingkat metrik
-
Setiap metrik diberi level individual. Saat Anda menetapkan tingkat pelaporan metrik, metrik dengan tingkat individu di bawah tingkat pelaporan tidak dikirim ke CloudWatch. Levelnya adalah:
NONE,SUMMARY, danDETAILED. Pengaturan default adalahDETAILED; yaitu, semua metrik dikirim ke CloudWatch. Tingkat pelaporanNONEberarti tidak ada metrik yang dikirim sama sekali. Untuk informasi tentang level mana yang ditetapkan untuk metrik apa, lihatDaftar metrik. - dimensi yang diaktifkan
-
Setiap metrik KCL memiliki dimensi terkait yang juga dikirim ke CloudWatch. Di KCL 2.x, jika KCL dikonfigurasi untuk memproses aliran data tunggal, semua dimensi metrik (
Operation,ShardId, danWorkerIdentifier) diaktifkan secara default. Juga, di KCL 2.x, jika KCL dikonfigurasi untuk memproses aliran data tunggal,Operationdimensi tidak dapat dinonaktifkan. Di KCL 2.x, jika KCL dikonfigurasi untuk memproses beberapa aliran data, semua dimensi metrik (Operation,,ShardIdStreamId, danWorkerIdentifier) diaktifkan secara default. Juga, di KCL 2.x, jika KCL dikonfigurasi untuk memproses beberapa aliran data, dimensiOperationdanStreamIddimensi tidak dapat dinonaktifkan.StreamIddimensi hanya tersedia untuk metrik per-shard.Di KCL 1.x, hanya
ShardIddimensiOperationdan yang diaktifkan secara default, danWorkerIdentifierdimensi dinonaktifkan. Di KCL 1.x,Operationdimensi tidak dapat dinonaktifkan.Untuk informasi selengkap CloudWatch nya tentang dimensi metrik, lihat bagian Dimensi di topik Kon CloudWatch sep Amazon, di Panduan CloudWatch Pengguna Amazon.
Ketika
WorkerIdentifierdimensi diaktifkan, jika nilai yang berbeda digunakan untuk properti ID pekerja setiap kali pekerja KCL tertentu memulai ulang, kumpulan metrik baru dengan nilaiWorkerIdentifierdimensi baru dikirim ke. CloudWatch Jika Anda memerlukan nilaiWorkerIdentifierdimensi yang sama di seluruh restart pekerja KCL tertentu, Anda harus secara eksplisit menentukan nilai ID pekerja yang sama selama inisialisasi untuk setiap pekerja. Perhatikan bahwa nilai ID pekerja untuk setiap pekerja KCL aktif harus unik di semua pekerja KCL.
Konfigurasi metrik
Level metrik dan dimensi yang diaktifkan dapat dikonfigurasi menggunakan KinesisClientLibConfiguration instance, yang diteruskan ke Worker saat meluncurkan aplikasi KCL. MultiLangDaemon Dalam kasus ini, metricsEnabledDimensions properti metricsLevel dan dapat ditentukan dalam file.properties yang digunakan untuk meluncurkan aplikasi MultiLangDaemon KCL.
Level metrik dapat ditetapkan salah satu dari tiga nilai: TIDAK ADA, RINGKASAN, atau DETAIL. Nilai dimensi yang diaktifkan harus berupa string yang dipisahkan koma dengan daftar dimensi yang diizinkan untuk metrik. CloudWatch Dimensi yang digunakan oleh aplikasi KCL adalahOperation,ShardId, danWorkerIdentifier.
Daftar metrik
Tabel berikut mencantumkan metrik KCL, dikelompokkan berdasarkan ruang lingkup dan operasi.
Per-KCL-application metrik
Metrik ini dikumpulkan di semua pekerja KCL dalam lingkup aplikasi, seperti yang didefinisikan oleh CloudWatch namespace Amazon.
Topik
LeaseAssignmentManager
LeaseAssignmentManagerOperasi bertanggung jawab untuk menetapkan sewa kepada pekerja dan menyeimbangkan kembali sewa di antara pekerja untuk mencapai pemanfaatan sumber daya pekerja yang merata. Logika untuk operasi ini termasuk membaca metadata terkait sewa dari tabel sewa dan metrik dari tabel metrik pekerja, dan melakukan penugasan sewa.
| Metrik | Deskripsi |
|---|---|
|
LeaseAndWorkerMetricsLoad.Time |
Waktu yang dibutuhkan untuk memuat semua entri sewa dan metrik pekerja di manajer penugasan sewa (LAM), penugasan sewa baru dan algoritma penyeimbangan beban yang diperkenalkan di KCL 3.x. Tingkat metrik: Terinci Unit: Milidetik |
| TotalLeases |
Jumlah total sewa untuk aplikasi KCL saat ini. Tingkat metrik: Ringkasan Unit: Hitungan |
| NumWorkers |
Jumlah total pekerja dalam aplikasi KCL saat ini. Tingkat metrik: Ringkasan Unit: Hitungan |
|
AssignExpiredOrUnassignedLeases.Time |
Waktu untuk melakukan penugasan dalam memori dari sewa yang kedaluwarsa. Tingkat metrik: Terinci Unit: Milidetik |
| LeaseSpillover |
Jumlah sewa yang tidak ditetapkan karena mencapai batas jumlah sewa maksimum atau throughput maksimum per pekerja. Tingkat metrik: Ringkasan Unit: Hitungan |
|
BalanceWorkerVariance.Time |
Saatnya melakukan penyeimbangan sewa dalam memori antar pekerja. Tingkat metrik: Terinci Unit: Milidetik |
|
NumOfLeasesReassignment |
Jumlah total penugasan kembali sewa yang dibuat dalam iterasi penugasan ulang saat ini. Tingkat metrik: Ringkasan Unit: Hitungan |
|
FailedAssignmentCount |
Jumlah kegagalan dalam AssignLease panggilan ke tabel sewa DynamoDB. Tingkat metrik: Terinci Unit: Hitungan |
|
ParallelyAssignLeases.Time |
Saatnya mengalirkan tugas baru ke tabel sewa DynamoDB. Tingkat metrik: Terinci Unit: Milidetik |
|
ParallelyAssignLeases.Success |
Jumlah penugasan tugas baru yang berhasil. Tingkat metrik: Terinci Unit: Hitungan |
|
TotalStaleWorkerMetricsEntry |
Jumlah total entri metrik pekerja yang harus dibersihkan. Tingkat metrik: Terinci Unit: Hitungan |
| StaleWorkerMetricsCleanup.Time |
Waktu untuk melakukan penghapusan entri metrik pekerja dari tabel metrik pekerja DynamoDB. Tingkat metrik: Terinci Unit: Milidetik |
| Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
| Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Hitungan |
| ForceLeaderRelease |
Menunjukkan bahwa manajer penugasan sewa telah gagal 3 kali berturut-turut dan pekerja pemimpin melepaskan kepemimpinan. Tingkat metrik: Ringkasan Unit: Hitungan |
|
NumWorkersWithInvalidEntry |
Jumlah entri metrik pekerja yang dianggap tidak valid. Tingkat metrik: Ringkasan Unit: Hitungan |
|
NumWorkersWithFailingWorkerMetric |
Jumlah entri metrik pekerja yang memiliki -1 (mewakili nilai metrik pekerja tidak tersedia) sebagai salah satu nilai untuk metrik pekerja. Tingkat metrik: Ringkasan Unit: Hitungan |
|
LeaseDeserializationFailureCount |
Entri sewa dari tabel sewa yang gagal dideserialisasi. Tingkat metrik: Ringkasan Unit: Hitungan |
InitializeTask
InitializeTaskOperasi bertanggung jawab untuk menginisialisasi prosesor rekaman untuk aplikasi KCL. Logika untuk operasi ini termasuk mendapatkan iterator shard dari Kinesis Data Streams dan menginisialisasi prosesor rekaman.
| Metrik | Deskripsi |
|---|---|
| KinesisDataFetcher.getIterator.Success |
Jumlah Tingkat metrik: Terinci Unit: Hitungan |
| KinesisDataFetcher.getIterator.Time |
Waktu yang dibutuhkan per Tingkat metrik: Terinci Unit: Milidetik |
| RecordProcessor.initialize.Time |
Waktu yang dibutuhkan oleh metode inisialisasi prosesor rekaman. Tingkat metrik: Ringkasan Unit: Milidetik |
| Berhasil |
Jumlah inisialisasi prosesor rekaman yang berhasil. Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan oleh pekerja KCL untuk inisialisasi prosesor rekaman. Tingkat metrik: Ringkasan Unit: Milidetik |
ShutdownTask
ShutdownTaskOperasi memulai urutan shutdown untuk pemrosesan pecahan. Hal ini dapat terjadi karena pecahan dipecah atau digabungkan, atau ketika sewa pecahan hilang dari pekerja. Dalam kedua kasus, shutdown() fungsi prosesor rekaman dipanggil. Pecahan baru juga ditemukan dalam kasus di mana pecahan dipecah atau digabungkan, menghasilkan pembuatan satu atau dua pecahan baru.
| Metrik | Deskripsi |
|---|---|
| CreateLease.Success |
Berapa kali pecahan anak baru berhasil ditambahkan ke tabel DynamoDB aplikasi KCL setelah shutdown pecahan induk. Tingkat metrik: Terinci Unit: Hitungan |
| CreateLease.Time |
Waktu yang dibutuhkan untuk menambahkan informasi pecahan anak baru dalam tabel DynamoDB aplikasi KCL. Tingkat metrik: Terinci Unit: Milidetik |
| UpdateLease.Success |
Jumlah pos pemeriksaan akhir yang berhasil selama penutupan prosesor rekaman. Tingkat metrik: Terinci Unit: Hitungan |
| UpdateLease.Time |
Waktu yang dibutuhkan oleh operasi pos pemeriksaan selama penutupan prosesor rekaman. Tingkat metrik: Terinci Unit: Milidetik |
| RecordProcessor.shutdown.Time |
Waktu yang dibutuhkan oleh metode shutdown prosesor rekaman. Tingkat metrik: Ringkasan Unit: Milidetik |
| Berhasil |
Jumlah tugas shutdown yang berhasil. Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan oleh pekerja KCL untuk tugas shutdown. Tingkat metrik: Ringkasan Unit: Milidetik |
ShardSyncTask
ShardSyncTaskOperasi menemukan perubahan pada informasi shard untuk aliran data Kinesis, sehingga pecahan baru dapat diproses oleh aplikasi KCL.
| Metrik | Deskripsi |
|---|---|
| CreateLease.Success |
Jumlah upaya yang berhasil untuk menambahkan informasi shard baru ke dalam tabel DynamoDB aplikasi KCL. Tingkat metrik: Terinci Unit: Hitungan |
| CreateLease.Time |
Waktu yang dibutuhkan untuk menambahkan informasi shard baru dalam tabel DynamoDB aplikasi KCL. Tingkat metrik: Terinci Unit: Milidetik |
| Berhasil |
Jumlah operasi sinkronisasi pecahan yang berhasil. Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan untuk operasi sinkronisasi pecahan. Tingkat metrik: Ringkasan Unit: Milidetik |
BlockOnParentTask
Jika pecahan dipecah atau digabungkan dengan pecahan lain, maka pecahan anak baru dibuat. BlockOnParentTaskOperasi memastikan bahwa pemrosesan rekaman untuk pecahan baru tidak dimulai sampai pecahan induk sepenuhnya diproses oleh KCL.
| Metrik | Deskripsi |
|---|---|
| Berhasil |
Jumlah pemeriksaan yang berhasil untuk penyelesaian pecahan induk. Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan untuk penyelesaian pecahan induk. Tingkat metrik: Ringkasan Satuan: Milidetik |
PeriodicShardSyncManager
Ber PeriodicShardSyncManager tanggung jawab untuk memeriksa aliran data yang sedang diproses oleh aplikasi konsumen KCL, mengidentifikasi aliran data dengan sewa parSIAL dan menyerahkannya untuk sinkronisasi.
Metrik berikut tersedia saat KCL dikonfigurasi untuk memproses aliran data tunggal (kemudian nilai NumStreamsToSync dan NumStreamsWithPartialLeases disetel ke 1) dan juga ketika KCL dikonfigurasi untuk memproses beberapa aliran data.
| Metrik | Deskripsi |
|---|---|
| NumStreamsToSync |
Jumlah aliran data (per AWS akun) yang diproses oleh aplikasi konsumen yang berisi sewa parSIAL dan yang harus diserahkan untuk sinkronisasi. Tingkat metrik: Ringkasan Unit: Hitungan |
| NumStreamsWithPartialLeases |
Jumlah aliran data (per AWS akun) yang diproses aplikasi konsumen yang berisi sewa parSIAL. Tingkat metrik: Ringkasan Unit: Hitungan |
| Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Jumlah waktu (dalam milidetik) yang Tingkat metrik: Ringkasan Unit: Milidetik |
MultistreamTracker
Antar MultistreamTracker muka memungkinkan Anda untuk membangun aplikasi konsumen KCL yang dapat memproses beberapa aliran data secara bersamaan.
| Metrik | Deskripsi |
|---|---|
| DeletedStreams.Count |
Jumlah aliran data yang dihapus pada periode waktu ini. Tingkat metrik: Ringkasan Unit: Hitungan |
| ActiveStreams.Count |
Jumlah aliran data aktif yang sedang diproses. Tingkat metrik: Ringkasan Unit: Hitungan |
| StreamsPendingDeletion.Count |
Jumlah aliran data yang menunggu penghapusan berdasarkan Tingkat metrik: Ringkasan Unit: Hitungan |
Per-worker metrik
Metrik ini dikumpulkan di semua prosesor rekaman yang menggunakan data dari aliran data Kinesis, seperti instans Amazon EC2.
WorkerMetricStatsReporter
WorkerMetricStatReporterOperasi bertanggung jawab untuk menerbitkan metrik pekerja saat ini secara berkala ke tabel metrik pekerja. Metrik ini digunakan oleh LeaseAssignmentManager operasi untuk melakukan tugas sewa.
| Metrik | Deskripsi |
|---|---|
|
InMemoryMetricStatsReporterFailure |
Jumlah kegagalan untuk menangkap nilai metrik pekerja dalam memori, karena kegagalan beberapa metrik pekerja. Tingkat metrik: Ringkasan Unit: Hitungan |
|
WorkerMetricStatsReporter.Time |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
|
WorkerMetricStatsReporter.Success |
Berapa kali Tingkat metrik: Ringkasan Unit: Hitungan |
LeaseDiscovery
LeaseDiscoveryOperasi bertanggung jawab untuk mengidentifikasi sewa baru yang ditugaskan kepada pekerja saat ini oleh LeaseAssignmentManager operasi. Logika untuk operasi ini melibatkan mengidentifikasi sewa yang ditetapkan untuk pekerja saat ini dengan membaca indeks sekunder global dari tabel sewa.
| Metrik | Deskripsi |
|---|---|
|
ListLeaseKeysForWorker.Time |
Saatnya memanggil indeks sekunder global pada tabel sewa dan mendapatkan kunci sewa yang ditetapkan untuk pekerja saat ini. Tingkat metrik: Terinci Unit: Milidetik |
|
FetchNewLeases.Time |
Saatnya mengambil semua sewa baru dari tabel sewa. Tingkat metrik: Terinci Unit: Milidetik |
|
NewLeasesDiscovered |
Jumlah total sewa baru yang diberikan kepada pekerja. Tingkat metrik: Terinci Unit: Hitungan |
|
Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
|
Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Hitungan |
|
OwnerMismatch |
Jumlah ketidakcocokan pemilik dari respon GSI dan tabel sewa dibaca konsisten. Tingkat metrik: Terinci Unit: Hitungan |
RenewAllLeases
RenewAllLeasesOperasi secara berkala memperbarui sewa shard yang dimiliki oleh instance pekerja tertentu.
| Metrik | Deskripsi |
|---|---|
| RenewLease.Success |
Jumlah perpanjangan sewa yang berhasil oleh pekerja. Tingkat metrik: Terinci Unit: Hitungan |
| RenewLease.Time |
Waktu yang dibutuhkan oleh operasi pembaruan sewa. Tingkat metrik: Terinci Unit: Milidetik |
| CurrentLeases |
Jumlah sewa pecahan yang dimiliki oleh pekerja setelah semua sewa diperbarui. Tingkat metrik: Ringkasan Unit: Hitungan |
| LostLeases |
Jumlah sewa pecahan yang hilang setelah upaya untuk memperbarui semua sewa yang dimiliki oleh pekerja. Tingkat metrik: Ringkasan Unit: Hitungan |
| Berhasil |
Berapa kali operasi pembaruan sewa berhasil bagi pekerja. Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan untuk memperbarui semua sewa untuk pekerja. Tingkat metrik: Ringkasan Unit: Milidetik |
TakeLeases
TakeLeasesOperasi menyeimbangkan pemrosesan catatan antara semua pekerja KCL. Jika pekerja KCL saat ini memiliki sewa shard lebih sedikit daripada yang diperlukan, diperlukan sewa pecahan dari pekerja lain yang kelebihan beban.
| Metrik | Deskripsi |
|---|---|
| ListLeases.Success |
Berapa kali semua sewa shard berhasil diambil dari tabel DynamoDB aplikasi KCL. Tingkat metrik: Terinci Unit: Hitungan |
| ListLeases.Time |
Waktu yang dibutuhkan untuk mengambil semua sewa shard dari tabel DynamoDB aplikasi KCL. Tingkat metrik: Terinci Unit: Milidetik |
| TakeLease.Success |
Berapa kali pekerja berhasil mengambil sewa shard dari pekerja KCL lainnya. Tingkat metrik: Terinci Unit: Hitungan |
| TakeLease.Time |
Waktu yang dibutuhkan untuk memperbarui tabel sewa dengan sewa yang diambil oleh pekerja. Tingkat metrik: Terinci Unit: Milidetik |
| NumWorkers |
Jumlah total pekerja, seperti yang diidentifikasi oleh pekerja tertentu. Tingkat metrik: Ringkasan Unit: Hitungan |
| NeededLeases |
Jumlah sewa pecahan yang dibutuhkan pekerja saat ini untuk beban pemrosesan shard-processing yang seimbang. Tingkat metrik: Terinci Unit: Hitungan |
| LeasesToTake |
Jumlah sewa yang akan dicoba oleh pekerja. Tingkat metrik: Terinci Unit: Hitungan |
| TakenLeases |
Jumlah sewa yang berhasil diambil oleh pekerja. Tingkat metrik: Ringkasan Unit: Hitungan |
| TotalLeases |
Jumlah total pecahan yang sedang diproses aplikasi KCL. Tingkat metrik: Terinci Unit: Hitungan |
| ExpiredLeases |
Jumlah total pecahan yang tidak diproses oleh pekerja mana pun, seperti yang diidentifikasi oleh pekerja tertentu. Tingkat metrik: Ringkasan Unit: Hitungan |
| Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
Per-shard metrik
Metrik ini digabungkan di seluruh prosesor catatan tunggal.
ProcessTask
ProcessTaskOperasi memang GetRecords gil dengan posisi iterator saat ini untuk mengambil catatan dari aliran dan memanggil fungsi rekaman prosesor. processRecords
| Metrik | Deskripsi |
|---|---|
| KinesisDataFetcher.getRecords.Success |
Jumlah Tingkat metrik: Terinci Unit: Hitungan |
| KinesisDataFetcher.getRecords.Time |
Waktu yang dibutuhkan per Tingkat metrik: Terinci Unit: Milidetik |
| UpdateLease.Success |
Jumlah pos pemeriksaan yang berhasil dibuat oleh prosesor rekaman untuk pecahan yang diberikan. Tingkat metrik: Terinci Unit: Hitungan |
| UpdateLease.Time |
Waktu yang dibutuhkan untuk setiap operasi pos pemeriksaan untuk pecahan yang diberikan. Tingkat metrik: Terinci Unit: Milidetik |
| DataBytesProcessed |
Ukuran total catatan yang diproses dalam byte pada setiap pemang Tingkat metrik: Ringkasan Satuan: Byte |
| RecordsProcessed |
Jumlah catatan yang diproses pada setiap pem Tingkat metrik: Ringkasan Unit: Hitungan |
| ExpiredIterator |
Jumlah yang ExpiredIteratorException diterima saat menelepon Tingkat metrik: Ringkasan Unit: Hitungan |
| MillisBehindLatest | Waktu iterator saat ini tertinggal dari catatan terbaru (tip) di pecahan. Nilai ini kurang dari atau sama dengan perbedaan waktu antara catatan terbaru dalam respons dan waktu saat ini. Ini adalah refleksi yang lebih akurat tentang seberapa jauh pecahan dari ujung daripada membandingkan cap waktu dalam catatan respons terakhir. Nilai ini berlaku untuk kumpulan catatan terbaru, bukan rata-rata semua stempel waktu di setiap catatan. Tingkat metrik: Ringkasan Unit: Milidetik |
| RecordProcessor.processRecords.Time |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
| Berhasil |
Jumlah operasi tugas proses yang berhasil. Tingkat metrik: Ringkasan Unit: Hitungan |
| Waktu |
Waktu yang dibutuhkan untuk operasi tugas proses. Tingkat metrik: Ringkasan Unit: Milidetik |