Metrik sisi klien HBase lama
Halaman ini menjelaskan kumpulan metrik sisi klien yang telah diganti dengan metrik sisi klien bawaan. Halaman ini dikelola sebagai referensi bagi developer yang masih menggunakan metrik lama.
Sebaiknya gunakan metrik sisi klien bawaan yang dijelaskan dalam Ringkasan metrik sisi klien, bukan metrik lama yang dijelaskan di halaman ini.
Aktifkan metrik
Informasi ini diberikan untuk pelanggan yang menggunakan metrik lama. Untuk mengaktifkan metrik sisi klien bawaan yang lebih baru, lihat Menyiapkan metrik sisi klien.
Klien Cloud Bigtable HBase untuk Java menggunakan Dropwizard Metrics untuk mengumpulkan dan melaporkan metrik sisi klien. Karena pengumpulan metrik dapat menambahkan sejumlah kecil latensi (satu digit mikrodetik) ke setiap permintaan, metrik tidak diaktifkan secara default. Bagian berikut menjelaskan cara mengaktifkan metrik sisi klien lama.
Menggunakan reporter Log4j
Cara termudah untuk mengaktifkan metrik sisi klien lama adalah dengan menambahkan baris berikut ke file konfigurasi Log4j Anda:
log4j.category.com.google.cloud.bigtable.metrics=DEBUG
Setelan konfigurasi ini mengaktifkan pengumpulan metrik dan mencatat metrik Bigtable dengan SLF4J logger.
Gunakan reporter lain
Anda dapat menggunakan jenis pelapor lain dengan memperbarui kode aplikasi Anda. Misalnya, berikut adalah reporter yang mengirim metrik ke server Graphite:
Graphite pickledGraphite = new PickledGraphite(new InetSocketAddress("graphite.example.com", 2004));
DropwizardMetricRegistry registry = new DropwizardMetricRegistry();
GraphiteReporter reporter =
GraphiteReporter.forRegistry(registry.getRegistry())
.convertRatesTo(TimeUnit.SECONDS)
.convertDurationsTo(TimeUnit.MILLISECONDS)
.filter(MetricFilter.ALL)
.build(pickledGraphite);
reporter.start(1, TimeUnit.MINUTES);
BigtableClientMetrics.setMetricRegistry(registry);
Metrik Dropwizard menyediakan reporter untuk JMX, logging konsol, SLF4J, dan CSV. Ada juga berbagai reporter pihak ketiga yang tersedia.
Metrik yang tersedia
Bagian ini menjelaskan metrik yang tersedia saat metrik sisi klien HBase lama diaktifkan. Setiap metrik memiliki salah satu jenis berikut:
- Penghitung: Jumlah kumulatif per mesin virtual Java (JVM).
- Meter: Menghitung informasi plus informasi throughput (jumlah per menit, 5 menit, atau 15 menit terakhir)
- Timer: Informasi pengukur plus informasi latensi (seperti median, rata-rata, dan persentil ke-95)
Hanya metrik tertentu yang dikumpulkan untuk setiap jenis permintaan. Lihat "Contoh:
Metrik untuk permintaan Put
" untuk mengetahui contoh metrik yang
dikumpulkan selama permintaan Put
.
Metrik tingkat channel
Jenis | Nama | Deskripsi |
---|---|---|
Penghitung | google-cloud-bigtable.sessions.active |
Jumlah BigtableSession yang dibuka. Setiap Connection HBase
memiliki satu BigtableSession . |
Penghitung | google-cloud-bigtable.grpc.channel.active |
Jumlah saluran gRPC/Netty tingkat rendah yang dibuka. Setiap
BigtableSession memiliki banyak saluran gRPC. |
Metrik RPC umum
Jenis | Nama | Deskripsi |
---|---|---|
Penghitung | google-cloud-bigtable.grpc.rpc.active |
Jumlah remote prosedur call (RPC) yang saat ini aktif. |
Pengukur | google-cloud-bigtable.grpc.rpc.performed |
Throughput RPC. |
Metrik metode data
Metrik metode data dikumpulkan untuk metode data berikut:
ReadRows
: Mengimplementasikan proses mendapatkan dan memindai.MutateRow
: Mengimplementasikan pelepasan dan penghapusan.MutateRows
: Mengimplementasikan penulisan massal.CheckAndMutateRow
: Mengimplementasikan metodecheckAnd*
HBase.ReadModifyWrite
: Mengimplementasikan metodeAppend
danIncrement
HBase.SampleRowKeys
: Mengambil informasi region yang digunakan untuk operasi MapReduce.
Jenis | Nama | Deskripsi |
---|---|---|
Timer | google-cloud-bigtable.grpc.method.[METHOD_TYPE].operation.latency |
Durasi waktu yang dibutuhkan untuk setiap operasi. Operasi mencakup jumlah total latensi dari semua RPC yang dijalankan. (Biasanya hanya satu RPC yang dijalankan. Percobaan ulang sisi klien dapat menyebabkan RPC yang sama dilakukan lebih dari sekali jika ada error sementara.) |
Timer | google-cloud-bigtable.grpc.method.ReadRows.firstResponse.latency |
Durasi waktu yang diperlukan untuk menerima respons pertama atas permintaan pemindaian. |
Pengukur | google-cloud-bigtable.grpc.method.[METHOD_TYPE].retries.performed |
Jumlah percobaan ulang yang dilakukan. |
Pengukur | google-cloud-bigtable.grpc.method.[METHOD_TYPE].failures |
Jumlah kegagalan yang tidak dapat dicoba ulang. |
Pengukur | google-cloud-bigtable.grpc.method.[METHOD_TYPE].retries.exhausted |
Frekuensi percobaan ulang dibatalkan karena terlalu banyak percobaan ulang yang gagal. |
Metrik massal
Metrik massal disediakan untuk metode yang menampilkan lebih dari satu respons, seperti penulisan massal.
Jenis | Nama | Deskripsi |
---|---|---|
Pengukur | google-cloud-bigtable.scanner.results |
Throughput setiap baris yang ditampilkan oleh pemindaian. |
Pengukur | google-cloud-bigtable.bulk-mutator.mutations.added |
Throughput masing-masing mutasi yang ditambahkan untuk setiap permintaan MutateRows . |
Pengukur | google-cloud-bigtable.bulk-mutator.mutations.retried |
Jumlah mutasi individu yang dicoba lagi dari waktu ke waktu. |
Metrik tabel Bigtable
Mengonversi objek Bigtable ke objek HBase dapat menambah latensi permintaan. Timer berikut dapat dikorelasikan dengan timer
*.operation.latency
yang ditentukan untuk mengukur biaya konversi.
Jenis | Nama | Deskripsi |
---|---|---|
Timer | google-cloud-bigtable.table.put.latency |
Durasi waktu yang diperlukan untuk setiap operasi Put .
Berkorelasi dengan
google-cloud-bigtable.grpc.method.MutateRow.operation.latency . |
Timer | google-cloud-bigtable.table.get.latency |
Durasi waktu yang diperlukan untuk setiap operasi Get .
Berkorelasi dengan
google-cloud-bigtable.grpc.method.ReadRows.operation.latency . |
Contoh: Metrik untuk permintaan Put
Jika metrik sisi klien diaktifkan, metrik berikut akan dikumpulkan untuk permintaan Put
yang berhasil dan tidak dicoba lagi:
- Penghitung:
google-cloud-bigtable.grpc.rpc.active
- Meter:
google-cloud-bigtable.grpc.rpc.performed
- Timer:
google-cloud-bigtable.grpc.method.MutateRow.operation.latency
- Timer:
google-cloud-bigtable.table.put.latency
Pengumpulan metrik ini akan menambahkan sekitar 1 mikrodetik (1/1.000 milidetik) ke operasi Put
. Keseluruhan operasi Put
dapat berlangsung secepat 2 hingga 3 milidetik, dengan anggapan bahwa operasi tersebut menyertakan sekitar 1 KB data.