Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pantau Perpustakaan Klien Kinesis dengan Amazon CloudWatch
Perpustakaan Klien Kinesis (KCL) untuk Amazon Kinesis Data Streams menerbitkan metrik CloudWatch Amazon kustom atas nama Anda, menggunakan nama aplikasi Anda sebagai namespace. KCL Anda dapat melihat metrik ini dengan menavigasi ke CloudWatch konsol
Ada biaya nominal untuk metrik yang diunggah CloudWatch olehKCL; khususnya, biaya Metrik CloudWatch Kustom Amazon dan CloudWatch APIPermintaan Amazon berlaku. Untuk informasi selengkapnya, lihat CloudWatch Harga Amazon
Metrik dan namespace
Namespace yang digunakan untuk mengunggah metrik adalah nama aplikasi yang Anda tentukan saat Anda meluncurkan. KCL
Tingkat dan dimensi metrik
Ada dua opsi untuk mengontrol metrik mana yang diunggah: CloudWatch
- tingkat metrik
-
Setiap metrik diberikan tingkat individu. Saat Anda menetapkan tingkat pelaporan metrik, metrik dengan tingkat individual di bawah tingkat pelaporan tidak akan dikirim. CloudWatch Levelnya adalah:
NONE
,SUMMARY
, danDETAILED
. Pengaturan default adalahDETAILED
; yaitu, semua metrik dikirim ke CloudWatch. Tingkat pelaporanNONE
berarti tidak ada metrik yang dikirim sama sekali. Untuk informasi tentang level mana yang ditetapkan ke metrik apa, lihatDaftar metrik. - dimensi yang diaktifkan
-
Setiap KCL metrik 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,Operation
dimensi tidak dapat dinonaktifkan. Di KCL 2.x, jika KCL dikonfigurasi untuk memproses beberapa aliran data, semua dimensi metrik (Operation
,,ShardId
StreamId
, danWorkerIdentifier
) diaktifkan secara default. Juga, di KCL 2.x, jika KCL dikonfigurasi untuk memproses beberapa aliran data,Operation
danStreamId
dimensi tidak dapat dinonaktifkan.StreamId
dimensi hanya tersedia untuk metrik per-shard.Di KCL 1.x, hanya
Operation
danShardId
dimensi yang diaktifkan secara default, danWorkerIdentifier
dimensi dinonaktifkan. Di KCL 1.x,Operation
dimensi tidak dapat dinonaktifkan.Untuk informasi selengkapnya tentang dimensi CloudWatch metrik, lihat bagian Dimensi dalam topik CloudWatch Konsep Amazon, di Panduan CloudWatch Pengguna Amazon.
Ketika
WorkerIdentifier
dimensi diaktifkan, jika nilai yang berbeda digunakan untuk properti ID pekerja setiap kali KCL pekerja tertentu memulai ulang, set metrik baru dengan nilaiWorkerIdentifier
dimensi baru akan dikirim ke. CloudWatch Jika Anda memerlukan nilaiWorkerIdentifier
dimensi yang sama di seluruh restart KCL pekerja tertentu, Anda harus secara eksplisit menentukan nilai ID pekerja yang sama selama inisialisasi untuk setiap pekerja. Perhatikan bahwa nilai ID pekerja untuk setiap KCL pekerja aktif harus unik di semua KCL pekerja.
Konfigurasi metrik
Level metrik dan dimensi yang diaktifkan dapat dikonfigurasi menggunakan KinesisClientLibConfiguration instance, yang diteruskan ke Worker saat meluncurkan KCL aplikasi. MultiLangDaemon Dalam kasus ini, metricsEnabledDimensions
properti metricsLevel
and dapat ditentukan dalam file.properties yang digunakan untuk meluncurkan MultiLangDaemon KCL aplikasi.
Level metrik dapat diberikan salah satu dari tiga nilai:NONE,SUMMARY, atauDETAILED. Nilai dimensi yang diaktifkan harus berupa string yang dipisahkan koma dengan daftar dimensi yang diizinkan untuk metrik. CloudWatch Dimensi yang digunakan oleh KCL aplikasi adalahOperation
,ShardId
, danWorkerIdentifier
.
Daftar metrik
Tabel berikut mencantumkan KCL metrik, dikelompokkan berdasarkan ruang lingkup dan operasi.
Per-KCL-application metrik
Metrik ini digabungkan di semua KCL pekerja dalam lingkup aplikasi, seperti yang didefinisikan oleh namespace Amazon CloudWatch .
Topik
LeaseAssignmentManager
LeaseAssignmentManager
Operasi ini 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.Waktu |
Waktu yang dibutuhkan untuk memuat semua entri metrik sewa dan pekerja di manajer penugasan sewa (LAM), algoritme penugasan sewa dan penyeimbangan beban baru yang diperkenalkan di 3.x. KCL Tingkat metrik: Terperinci Unit: Milidetik |
TotalLeases |
Jumlah total sewa untuk KCL aplikasi saat ini. Tingkat metrik: Ringkasan Unit: Jumlah |
NumWorkers |
Jumlah total pekerja dalam KCL aplikasi saat ini. Tingkat metrik: Ringkasan Unit: Jumlah |
AssignExpiredOrUnassignedLeases.Waktu |
Waktu untuk melakukan penugasan dalam memori dari sewa yang kedaluwarsa. Tingkat metrik: Terperinci Unit: Milidetik |
LeaseSpillover |
Jumlah sewa yang tidak ditetapkan karena mencapai batas jumlah maksimum sewa atau throughput maksimum per pekerja. Tingkat metrik: Ringkasan Unit: Jumlah |
BalanceWorkerVariance.Waktu |
Saatnya melakukan penyeimbangan sewa dalam memori antar pekerja. Tingkat metrik: Terperinci Unit: Milidetik |
NumOfLeasesReassignment |
Jumlah total penggantian sewa yang dilakukan dalam iterasi penugasan kembali saat ini. Tingkat metrik: Ringkasan Unit: Jumlah |
FailedAssignmentCount |
Jumlah kegagalan dalam AssignLease panggilan ke tabel sewa DynamoDB. Tingkat metrik: Terperinci Unit: Jumlah |
ParallelyAssignLeases.Waktu |
Saatnya menyiram tugas baru ke tabel sewa DynamoDB. Tingkat metrik: Terperinci Unit: Milidetik |
ParallelyAssignLeases.Sukses |
Jumlah pembilasan tugas baru yang berhasil. Tingkat metrik: Terperinci Unit: Jumlah |
TotalStaleWorkerMetricsEntry |
Jumlah total entri metrik pekerja yang harus dibersihkan. Tingkat metrik: Detil Unit: Jumlah |
StaleWorkerMetricsCleanup.Waktu |
Waktu untuk melakukan penghapusan entri metrik pekerja dari tabel metrik pekerja DynamoDB. Tingkat metrik: Detil Unit: Milidetik |
Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Jumlah |
ForceLeaderRelease |
Menunjukkan bahwa manajer penugasan sewa telah gagal 3 kali berturut-turut dan pekerja pemimpin melepaskan kepemimpinan. Tingkat metrik: Ringkasan Unit: Jumlah |
NumWorkersWithInvalidEntry |
Jumlah entri metrik pekerja yang dianggap tidak valid. Tingkat metrik: Ringkasan Unit: Jumlah |
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: Jumlah |
LeaseDeserializationFailureCount |
Entri sewa dari meja sewa yang gagal deserialisasi. Tingkat metrik: Ringkasan Unit: Jumlah |
InitializeTask
InitializeTask
Operasi ini bertanggung jawab untuk menginisialisasi prosesor rekaman untuk KCL aplikasi. Logika untuk operasi ini termasuk mendapatkan iterator pecahan dari Kinesis Data Streams dan menginisialisasi prosesor rekaman.
Metrik | Deskripsi |
---|---|
KinesisDataFetcher. getIterator.Sukses |
Jumlah Tingkat metrik: Detil Unit: Jumlah |
KinesisDataFetcher. getIterator.Waktu |
Waktu yang dibutuhkan per Tingkat metrik: Detil Unit: Milidetik |
RecordProcessor.inisialize.waktu |
Waktu yang dibutuhkan oleh metode inisialisasi prosesor rekaman. Tingkat metrik: Ringkasan Unit: Milidetik |
Berhasil |
Jumlah inisialisasi prosesor rekaman yang berhasil. Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan oleh KCL pekerja untuk inisialisasi prosesor rekaman. Tingkat metrik: Ringkasan Unit: Milidetik |
ShutdownTask
ShutdownTask
Operasi memulai urutan shutdown untuk pemrosesan shard. Hal ini dapat terjadi karena pecahan dipecah atau digabung, atau ketika sewa shard hilang dari pekerja. Dalam kedua kasus, shutdown()
fungsi prosesor rekaman dipanggil. Pecahan baru juga ditemukan dalam kasus di mana pecahan dipecah atau digabungkan, menghasilkan penciptaan satu atau dua pecahan baru.
Metrik | Deskripsi |
---|---|
CreateLease.Sukses |
Berapa kali pecahan anak baru berhasil ditambahkan ke dalam tabel DynamoDB KCL aplikasi setelah shutdown shard induk. Tingkat metrik: Detil Unit: Jumlah |
CreateLease.Waktu |
Waktu yang dibutuhkan untuk menambahkan informasi pecahan anak baru dalam tabel DynamoDB KCL aplikasi. Tingkat metrik: Detil Unit: Milidetik |
UpdateLease.Sukses |
Jumlah pos pemeriksaan akhir yang berhasil selama shutdown prosesor rekaman. Tingkat metrik: Detil Unit: Jumlah |
UpdateLease.Waktu |
Waktu yang dibutuhkan oleh operasi pos pemeriksaan selama shutdown prosesor rekaman. Tingkat metrik: Detil Unit: Milidetik |
RecordProcessor.shutdown.waktu |
Waktu yang dibutuhkan oleh metode shutdown prosesor rekaman. Tingkat metrik: Ringkasan Unit: Milidetik |
Berhasil |
Jumlah tugas shutdown yang berhasil. Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan oleh KCL pekerja untuk tugas shutdown. Tingkat metrik: Ringkasan Unit: Milidetik |
ShardSyncTask
ShardSyncTask
Operasi menemukan perubahan pada informasi pecahan untuk aliran data Kinesis, sehingga pecahan baru dapat diproses oleh aplikasi. KCL
Metrik | Deskripsi |
---|---|
CreateLease.Sukses |
Jumlah upaya yang berhasil untuk menambahkan informasi pecahan baru ke dalam tabel DynamoDB KCL aplikasi. Tingkat metrik: Detil Unit: Jumlah |
CreateLease.Waktu |
Waktu yang dibutuhkan untuk menambahkan informasi pecahan baru dalam tabel DynamoDB KCL aplikasi. Tingkat metrik: Detil Unit: Milidetik |
Berhasil |
Jumlah operasi sinkronisasi shard yang berhasil. Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan untuk operasi sinkronisasi shard. Tingkat metrik: Ringkasan Unit: Milidetik |
BlockOnParentTask
Jika pecahan dipecah atau digabung dengan pecahan lain, maka pecahan anak baru dibuat. BlockOnParentTask
Operasi memastikan bahwa pemrosesan rekaman untuk pecahan baru tidak dimulai sampai pecahan induk benar-benar diproses oleh. KCL
Metrik | Deskripsi |
---|---|
Berhasil |
Jumlah pemeriksaan yang berhasil untuk penyelesaian pecahan induk. Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan untuk penyelesaian pecahan induk. Tingkat metrik: Ringkasan Satuan: Milidetik |
PeriodicShardSyncManager
Bertanggung PeriodicShardSyncManager
jawab untuk memeriksa aliran data yang sedang diproses oleh aplikasi KCL konsumen, mengidentifikasi aliran data dengan sewa sebagian dan menyerahkannya untuk sinkronisasi.
Metrik berikut tersedia ketika KCL dikonfigurasi untuk memproses aliran data tunggal (kemudian nilai NumStreamsToSync dan NumStreamsWithPartialLeases diatur 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 sebagian dan yang harus diserahkan untuk sinkronisasi. Tingkat metrik: Ringkasan Unit: Jumlah |
NumStreamsWithPartialLeases |
Jumlah aliran data (per AWS akun) yang diproses aplikasi konsumen yang berisi sewa sebagian. Tingkat metrik: Ringkasan Unit: Jumlah |
Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Jumlah waktu (dalam milidetik) yang Tingkat metrik: Ringkasan Unit: Milidetik |
MultistreamTracker
MultistreamTracker
Antarmuka memungkinkan Anda untuk membangun aplikasi KCL konsumen yang dapat memproses beberapa aliran data secara bersamaan.
Metrik | Deskripsi |
---|---|
DeletedStreams.Hitung |
Jumlah aliran data yang dihapus pada periode waktu ini. Tingkat metrik: Ringkasan Unit: Jumlah |
ActiveStreams.Hitung |
Jumlah aliran data aktif yang sedang diproses. Tingkat metrik: Ringkasan Unit: Jumlah |
StreamsPendingDeletion.Hitung |
Jumlah aliran data yang tertunda penghapusan berdasarkan. Tingkat metrik: Ringkasan Unit: Jumlah |
Metrik per pekerja
Metrik ini dikumpulkan di semua prosesor rekaman yang menggunakan data dari aliran data Kinesis, seperti instance Amazon. EC2
WorkerMetricStatsReporter
WorkerMetricStatReporter
Operasi bertanggung jawab untuk menerbitkan metrik pekerja saat ini secara berkala ke tabel metrik pekerja. Metrik ini digunakan oleh LeaseAssignmentManager
operasi untuk melakukan penugasan sewa.
Metrik | Deskripsi |
---|---|
InMemoryMetricStatsReporterFailure |
Jumlah kegagalan untuk menangkap nilai metrik pekerja dalam memori, karena kegagalan beberapa metrik pekerja. Tingkat metrik: Ringkasan Unit: Jumlah |
WorkerMetricStatsReporter.Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
WorkerMetricStatsReporter.Sukses |
Berapa kali Tingkat metrik: Ringkasan Unit: Jumlah |
LeaseDiscovery
LeaseDiscovery
Operasi bertanggung jawab untuk mengidentifikasi sewa baru yang diberikan kepada pekerja saat ini oleh LeaseAssignmentManager
operasi. Logika untuk operasi ini melibatkan identifikasi sewa yang diberikan kepada pekerja saat ini dengan membaca indeks sekunder global dari tabel sewa.
Metrik | Deskripsi |
---|---|
ListLeaseKeysForWorker.Waktu |
Saatnya memanggil indeks sekunder global pada tabel sewa dan mendapatkan kunci sewa yang ditugaskan untuk pekerja saat ini. Tingkat metrik: Detil Unit: Milidetik |
FetchNewLeases.Waktu |
Saatnya mengambil semua sewa baru dari tabel sewa. Tingkat metrik: Detil Unit: Milidetik |
NewLeasesDiscovered |
Jumlah total sewa baru yang diberikan kepada pekerja. Tingkat metrik: Detil Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Jumlah |
OwnerMismatch |
Jumlah ketidakcocokan pemilik dari GSI respons dan tabel sewa yang konsisten dibaca. Tingkat metrik: Detil Unit: Jumlah |
RenewAllLeases
RenewAllLeases
Operasi secara berkala memperbarui sewa pecahan yang dimiliki oleh contoh pekerja tertentu.
Metrik | Deskripsi |
---|---|
RenewLease.Sukses |
Jumlah perpanjangan sewa yang berhasil oleh pekerja. Tingkat metrik: Detil Unit: Jumlah |
RenewLease.Waktu |
Waktu yang dibutuhkan oleh operasi perpanjangan sewa. Tingkat metrik: Detil Unit: Milidetik |
CurrentLeases |
Jumlah sewa pecahan yang dimiliki oleh pekerja setelah semua sewa diperbarui. Tingkat metrik: Ringkasan Unit: Jumlah |
LostLeases |
Jumlah sewa pecahan yang hilang setelah upaya untuk memperbarui semua sewa yang dimiliki oleh pekerja. Tingkat metrik: Ringkasan Unit: Jumlah |
Berhasil |
Berapa kali operasi pembaruan sewa berhasil bagi pekerja. Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan untuk memperbarui semua sewa untuk pekerja. Tingkat metrik: Ringkasan Unit: Milidetik |
TakeLeases
TakeLeases
Operasi menyeimbangkan pemrosesan catatan antara semua KCL pekerja. Jika KCL pekerja saat ini memiliki sewa pecahan lebih sedikit dari yang dibutuhkan, dibutuhkan sewa pecahan dari pekerja lain yang kelebihan beban.
Metrik | Deskripsi |
---|---|
ListLeases.Sukses |
Berapa kali semua sewa shard berhasil diambil dari tabel KCL DynamoDB aplikasi. Tingkat metrik: Detil Unit: Jumlah |
ListLeases.Waktu |
Waktu yang dibutuhkan untuk mengambil semua sewa shard dari tabel KCL DynamoDB aplikasi. Tingkat metrik: Detil Unit: Milidetik |
TakeLease.Sukses |
Berapa kali pekerja berhasil mengambil sewa pecahan dari pekerja lainKCL. Tingkat metrik: Detil Unit: Jumlah |
TakeLease.Waktu |
Waktu yang dibutuhkan untuk memperbarui tabel sewa dengan sewa yang diambil oleh pekerja. Tingkat metrik: Detil Unit: Milidetik |
NumWorkers |
Jumlah total pekerja, sebagaimana diidentifikasi oleh pekerja tertentu. Tingkat metrik: Ringkasan Unit: Jumlah |
NeededLeases |
Jumlah sewa pecahan yang dibutuhkan pekerja saat ini untuk beban pemrosesan pecahan yang seimbang. Tingkat metrik: Detil Unit: Jumlah |
LeasesToTake |
Jumlah sewa yang akan coba diambil oleh pekerja. Tingkat metrik: Detil Unit: Jumlah |
TakenLeases |
Jumlah sewa yang berhasil diambil oleh pekerja. Tingkat metrik: Ringkasan Unit: Jumlah |
TotalLeases |
Jumlah total pecahan yang diproses KCL aplikasi. Tingkat metrik: Detil Unit: Jumlah |
ExpiredLeases |
Jumlah total pecahan yang tidak diproses oleh pekerja mana pun, sebagaimana diidentifikasi oleh pekerja tertentu. Tingkat metrik: Ringkasan Unit: Jumlah |
Berhasil |
Berapa kali Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
Metrik per shard
Metrik ini dikumpulkan di satu prosesor rekaman.
ProcessTask
ProcessTask
Operasi memanggil GetRecordsdengan posisi iterator saat ini untuk mengambil catatan dari aliran dan memanggil fungsi prosesor rekaman. processRecords
Metrik | Deskripsi |
---|---|
KinesisDataFetcher. getRecords.Sukses |
Jumlah Tingkat metrik: Detil Unit: Jumlah |
KinesisDataFetcher. getRecords.Waktu |
Waktu yang dibutuhkan per Tingkat metrik: Detil Unit: Milidetik |
UpdateLease.Sukses |
Jumlah pos pemeriksaan yang berhasil dibuat oleh prosesor rekaman untuk pecahan yang diberikan. Tingkat metrik: Detil Unit: Jumlah |
UpdateLease.Waktu |
Waktu yang dibutuhkan untuk setiap operasi pos pemeriksaan untuk pecahan yang diberikan. Tingkat metrik: Detil Unit: Milidetik |
DataBytesProcessed |
Ukuran total catatan yang diproses dalam byte pada setiap Tingkat metrik: Ringkasan Unit: Byte |
RecordsProcessed |
Jumlah catatan yang diproses pada setiap Tingkat metrik: Ringkasan Unit: Jumlah |
ExpiredIterator |
Jumlah yang ExpiredIteratorException diterima saat menelepon Tingkat metrik: Ringkasan Unit: Jumlah |
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 stempel 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.Waktu |
Waktu yang dibutuhkan oleh Tingkat metrik: Ringkasan Unit: Milidetik |
Berhasil |
Jumlah operasi tugas proses yang berhasil. Tingkat metrik: Ringkasan Unit: Jumlah |
Waktu |
Waktu yang dibutuhkan untuk operasi tugas proses. Tingkat metrik: Ringkasan Unit: Milidetik |