Dokumen ini menjelaskan cara mengambil metrik klien kustom menggunakan OpenTelemetry. Metrik klien kustom tersedia menggunakan library klien Java dan Go.
Metrik sisi klien kustom dapat membantu Anda menemukan sumber latensi dalam sistem. Untuk mengetahui informasi selengkapnya, lihat Titik latensi dalam permintaan Spanner.
Library klien Spanner juga menyediakan statistik dan trace menggunakan framework kemampuan observasi OpenTelemetry. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan pengumpulan trace menggunakan OpenTelemetry.
OpenTelemetry adalah framework dan toolkit kemampuan observasi open source yang memungkinkan Anda membuat dan mengelola data telemetri seperti trace, metrik, dan log.
Sebelum memulai
Anda harus mengonfigurasi OpenTelemetry SDK dengan opsi yang sesuai untuk mengekspor data telemetri. Sebaiknya gunakan pengekspor OpenTelemetry Protocol (OTLP).
Untuk menyiapkan metrik sisi klien kustom menggunakan OpenTelemetry, Anda harus mengonfigurasi OpenTelemetry SDK dan pengekspor OTLP:
Tambahkan dependensi yang diperlukan ke aplikasi Anda menggunakan kode berikut:
Java
Go
Buat objek OpenTelemetry dengan pengekspor OTLP dan masukkan ke Spanner menggunakan
SpannerOptions:Java
Go
Mengambil latensi GFE
Latensi Google Front End (GFE) adalah durasi dalam milidetik antara saat jaringan Google menerima panggilan prosedur jarak jauh dari klien dan saat GFE menerima byte pertama respons.
Anda dapat mengambil latensi GFE menggunakan kode berikut:
Java
Go
Contoh kode menambahkan string spanner/gfe_latency ke nama metrik saat diekspor ke Cloud Monitoring. Anda dapat menelusuri metrik ini di Monitoring menggunakan string yang ditambahkan.
Mengambil latensi permintaan Cloud Spanner API
Latensi permintaan Cloud Spanner API adalah waktu dalam detik antara byte pertama permintaan klien yang diterima oleh frontend Cloud Spanner API dan byte terakhir respons yang dikirim oleh frontend Cloud Spanner API.
Metrik latensi ini tersedia sebagai bagian dari metrik Monitoring.
Mengambil latensi dua arah klien
Latensi dua arah klien adalah durasi dalam milidetik antara byte pertama permintaan Cloud Spanner API yang dikirim klien ke database (melalui GFE dan frontend Cloud Spanner API), dan byte terakhir respons yang diterima klien dari database.
Metrik latensi dua arah klien Spanner tidak didukung menggunakan OpenTelemetry. Anda dapat melihat metrik sisi klien latensi operasi. Untuk mengetahui informasi selengkapnya, lihat Deskripsi metrik sisi klien.
Anda juga dapat mengukur metrik menggunakan OpenCensus dengan a bridge dan memigrasikan data ke OpenTelemetry.
Mengambil latensi kueri
Latensi kueri adalah durasi dalam milidetik untuk menjalankan kueri SQL di database Spanner.
Anda dapat mengambil latensi kueri menggunakan kode berikut:
Java
Go
Contoh kode menambahkan string spanner/query_stats_elapsed ke nama metrik saat diekspor ke Monitoring. Anda dapat menelusuri metrik ini di Monitoring menggunakan string yang ditambahkan.
Melihat metrik di Metrics Explorer
Di Google Cloud konsol, buka halaman Metrics Explorer.
Pilih project Anda.
Klik Select a metric.
Telusuri metrik latensi menggunakan string berikut:
roundtrip_latency: untuk metrik latensi dua arah klien.spanner/gfe_latency: untuk metrik latensi GFE.spanner/query_stats_elapsed: untuk metrik latensi kueri.
Pilih metrik, lalu klik Apply.
Untuk mengetahui informasi selengkapnya tentang cara mengelompokkan atau menggabungkan metrik, lihat Membuat kueri menggunakan menu.
Langkah berikutnya
- Pelajari lebih lanjut OpenTelemetry.
- Pelajari cara mengonfigurasi OpenTelemetry SDK.
- Pelajari cara bermigrasi ke OpenTelemetry.
- Pelajari cara menggunakan metrik untuk mendiagnosis latensi.