Memantau database dengan Cloud Monitoring
Halaman ini menjelaskan cara menggunakan metrik Cloud Monitoring untuk Firestore dengan kompatibilitas MongoDB guna memantau database Anda.
Metrik Cloud Monitoring untuk Firestore dengan kompatibilitas MongoDB
Bagian berikut memberikan ringkasan metrik yang tersedia untuk Firestore dengan kompatibilitas MongoDB.
Resource yang Dimonitor
Resource yang dipantau di Cloud Monitoring merepresentasikan entitas logis atau fisik, seperti virtual machine, database, atau aplikasi. Resource yang dimonitor berisi serangkaian metrik unik yang dapat dijelajahi, dilaporkan melalui dasbor, atau digunakan untuk membuat pemberitahuan. Setiap resource juga memiliki serangkaian label resource, yang merupakan key-value pair yang menyimpan informasi tambahan tentang resource. Label resource tersedia untuk semua metrik yang terkait dengan resource.
Dengan menggunakan Cloud Monitoring API, performa Firestore dengan kompatibilitas MongoDB dipantau dengan resource berikut:
Resource | Deskripsi |
firestore.googleapis.com/Database | Jenis
resource yang dimonitor yang memberikan perincian untuk project ,
location , dan database_id . |
Metrik
Untuk mengetahui daftar lengkap metrik untuk Firestore, lihat Metrik Firestore. Bagian berikut ini menjelaskan beberapa metrik yang tersedia.
Metrik service runtime
Metrik serviceruntime
memberikan ringkasan umum tentang traffic project. Metrik ini tersedia untuk sebagian besar API Google Cloud . Jenis resource yang dimonitor
consumed_api
berisi metrik umum ini. Metrik ini diambil sampelnya
setiap 30 menit sehingga data menjadi lebih mudah diamati.
Label resource yang penting untuk metrik serviceruntime
adalah method
. Label
ini mewakili metode RPC dasar yang dipanggil. Metode SDK yang Anda panggil
mungkin tidak harus memiliki nama yang sama dengan metode RPC dasar. Hal ini
karena SDK menyediakan abstraksi API tingkat tinggi. Namun, saat mencoba
memahami cara aplikasi Anda berinteraksi dengan Firestore, penting untuk memahami metrik berdasarkan nama metode RPC.
Jika Anda perlu mengetahui metode RPC dasar untuk metode SDK tertentu, lihat dokumentasi API.
api/request_latencies
Metrik api/request_latencies
memberikan distribusi latensi di semua
permintaan yang telah diselesaikan.
Firestore mencatat metrik dari komponen Layanan Firestore. Metrik latensi mencakup waktu saat Firestore menerima permintaan hingga waktu saat Firestore selesai mengirimkan respons, termasuk interaksi dengan lapisan penyimpanan. Oleh karena itu, latensi pulang pergi (rtt) antara klien dan layanan Firestore tidak disertakan dalam metrik ini.
Metrik operasi dokumen
Firestore menyediakan jumlah pembacaan, penulisan, dan penghapusan. Metrik tulis memberikan perincian antara operasi 'CREATE' dan 'UPDATE'. Metrik ini selaras dengan operasi CRUD.
Metrik berikut dapat digunakan untuk memahami apakah database Anda lebih banyak melakukan operasi baca atau tulis, dan rasio dokumen baru versus dokumen yang dihapus.
document/delete_ops_count
: Jumlah dokumen yang berhasil dihapus.document/read_ops_count
: Jumlah dokumen yang berhasil dibaca dari kueri atau pencarian.document/write_ops_count
: Jumlah dokumen yang berhasil ditulis.
Metrik penagihan
Gunakan metrik ini untuk memahami penggunaan penagihan. Metrik ini tidak mencakup penagihan dari operasi administrator (pengindeksan, impor, ekspor, dan penghapusan massal).
api/billable_read_units
: Jumlah unit baca yang dapat ditagih. Penggunaannya dapat dikelompokkan berdasarkan nama layanan dan metode API.api/billable_write_units
: Jumlah unit tulis yang dapat ditagih. Penggunaannya dapat dikelompokkan berdasarkan nama layanan dan metode API.document/billable_managed_delete_write_units
: Jumlah unit tulis yang dapat ditagih dari layanan penghapusan terkelola seperti TTL.
Metrik indeks
Kecepatan penulisan indeks dapat dibandingkan dengan metrik document/write_ops_count
untuk memahami fanout indeks.
index/write_count
: Jumlah penulisan indeks.
Metrik TTL
Metrik TTL untuk metrik kompatibilitas Firestore dengan MongoDB digunakan untuk memantau efek kebijakan TTL yang diterapkan.
document/ttl_deletion_count
: Jumlah total dokumen yang dihapus oleh layanan TTL.document/ttl_expiration_to_deletion_delays
: Waktu yang berlalu antara saat dokumen dengan TTL habis masa berlakunya hingga saat dokumen benar-benar dihapus.
Melihat dasbor standar dan membuat dasbor kustom
Firestore dengan kompatibilitas MongoDB mendukung dasbor standar yang menggunakan metrik Cloud Monitoring. Anda juga dapat membuat dasbor kustom.
Melihat metrik penggunaan database
Buka dasbor penggunaan di konsol Google Cloud untuk melihat operasi baca, tulis, dan hapus dokumen dari waktu ke waktu.
Kontrol akses
Dasbor penggunaan memerlukan izin Identity and Access Management (IAM) monitoring.timeSeries.list
.
Peran Owner, Editor, dan Viewer Project memberikan izin ini. Anda juga dapat memberikan izin ini melalui peran Cloud Monitoring atau peran khusus.
Dasbor penggunaan database
Untuk melihat metrik penggunaan database Firestore dengan kompatibilitas MongoDB, lakukan hal berikut.
Di konsol Google Cloud , buka halaman Databases.
Pilih database yang diperlukan dari daftar database.
Di menu navigasi, klik Usage.
Dasbor penggunaan dan laporan penagihan
Dasbor penggunaan Firestore di konsol memberikan perkiraan penggunaan. Langkah ini dapat membantu Anda mengidentifikasi lonjakan penggunaan. Namun, dasbor ini bukan tampilan persis dari operasi yang ditagih. Tagihan penggunaan kemungkinan lebih tinggi. Untuk memantau penagihan, lihat metrik penagihan.
Dalam semua kasus perbedaan, laporan penagihan lebih diutamakan daripada dasbor penggunaan.
Operasi impor dan ekspor menyebabkan perbedaan antara dasbor penggunaan dan penggunaan yang ditagih. Pembacaan dan penulisan yang dilakukan oleh operasi ini tidak muncul di dasbor penggunaan.
Melihat metrik performa database
Halaman Monitoring di bagian Firestore pada konsol Google Cloud mencakup dasbor pemantauan yang telah ditentukan sebelumnya seperti Latensi Permintaan (P50 dan P99), Kode Respons, dan Statistik kueri (P50). Anda juga dapat membuat maksimal satu dasbor kustom. Untuk mengakses halaman Monitoring database, ikuti langkah-langkah berikut:
Di Google Cloud console, buka halaman Databases Firestore.
Pilih database dari daftar.
Di menu navigasi, klik Monitoring untuk membuka dasbor.
Membuat dasbor Cloud Monitoring kustom
Di Cloud Monitoring, dasbor kustom memungkinkan Anda menampilkan informasi yang relevan bagi Anda secara teratur. Misalnya, Anda dapat membuat dasbor untuk menampilkan metrik performa dan kebijakan pemberitahuan untuk project di lingkungan produksi Anda.
Untuk mengetahui informasi selengkapnya tentang cara menyiapkan dasbor kustom, lihat Mengelola dasbor kustom dan Menambahkan widget dasbor.
Membuat kebijakan pemberitahuan
Di Cloud Monitoring, Anda dapat membuat pemberitahuan untuk memberi tahu Anda saat terjadi perubahan pada kondisi metrik. Anda dapat menggunakan pemberitahuan ini untuk mengetahui adanya potensi masalah sebelum masalah tersebut memengaruhi pengguna Anda.
Untuk mengetahui informasi selengkapnya tentang cara membuat pemberitahuan, lihat Membuat kebijakan pemberitahuan batas metrik.
Pertimbangkan contoh berikut saat membuat kebijakan pemberitahuan latensi. Kebijakan pemberitahuan memeriksa latensi p99 dalam rentang waktu 5 menit. Jika latensi p99 tetap lebih tinggi dari 250 milidetik selama 5 menit, pemberitahuan akan dipicu.
Konsol
Di konsol Google Cloud , buka halaman Monitoring, lalu pilih notifications Alerting.
Pilih Create Policy.
Pilih metrik Request Latencies dari resource Consumed API.
Tambahkan filter layanan untuk
firestore.googleapis.com
untuk database Firestore Native.Klik Next untuk mengonfigurasi pemicu.
Pilih Condition Types sebagai Threshold.
Kondisi batas ditetapkan ke nilai batas 250 milidetik. Pemberitahuan dipicu saat nilai latensi p99 tetap sama selama periode rolling window (5 menit).
Tetapkan Threshold value sebagai 250.
Klik Next untuk mengonfigurasi notifikasi.
Tetapkan nama kebijakan pemberitahuan, lalu klik Next.
Tinjau konfigurasi pemberitahuan tersebut, lalu klik Create Policy.
MQL
Anda dapat menerapkan kebijakan pemberitahuan latensi yang sama menggunakan kueri Monitoring Query Language (MQL). Untuk contoh penggunaan MQL lainnya, lihat Contoh kueri MQL.
fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
[value_request_latencies_percentile:
percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'