Model Cloud Monitoring untuk memantau data terdiri dari tiga konsep utama:
- Jenis resource yang dimonitor
- Jenis metrik
- Deret waktu
Dokumen Model metrik menjelaskan konsep Cloud Monitoring ini secara umum. Jika konsep ini baru bagi Anda, baca halaman tersebut terlebih dahulu.
Halaman ini menjelaskan jenis metrik, resource yang dimonitor, dan deret waktu, beserta beberapa konsep terkait, secara lebih mendetail. Konsep ini mendasari semua metrik Pemantauan.
Anda harus memahami informasi di halaman ini jika ingin melakukan salah satu hal berikut:Periksa data metrik menggunakan Metrics Explorer.
Buat kebijakan pemberitahuan untuk memberi tahu Anda saat nilai berada di luar batas normalnya, seperti yang dijelaskan dalam Menggunakan kebijakan pemberitahuan.
Ambil data pemantauan mentah atau gabungan menggunakan Monitoring API, seperti yang dijelaskan dalam Mengambil data deret waktu.
Buat jenis metrik Anda sendiri, seperti yang dijelaskan dalam Ringkasan metrik yang ditentukan pengguna.
Tentang label
Jenis resource yang dimonitor dan jenis metrik mendukung label, yang memungkinkan data diklasifikasikan selama analisis. Contoh:
- Jenis resource yang dipantau untuk virtual machine dapat menyertakan label untuk lokasi mesin dan ID project yang terkait dengan mesin. Saat informasi tentang resource yang dipantau dicatat, informasi tersebut akan menyertakan nilai untuk label. Resource yang dimonitor mungkin juga memiliki label metadata yang disediakan sistem atau pengguna, selain label yang ditentukan untuk jenis resource yang dimonitor.
- Jenis metrik yang menghitung permintaan API mungkin memiliki label untuk mencatat nama metode yang dipanggil dan status permintaan.
Penggunaan label dibahas secara lebih mendetail di Label.
Jenis resource yang dimonitor
Resource yang dimonitor adalah resource tempat data metrik diambil. Cloud Monitoring mendukung sekitar 270 jenis resource yang dimonitor.
Jenis resource yang dipantau mencakup node dan tugas generik, komponen arsitektur di Google Kubernetes Engine, tabel di Bigtable, berbagai resource AWS, dan banyak lagi.Setiap jenis resource yang dimonitor dijelaskan secara formal dalam struktur data yang disebut deskripsi resource yang dimonitor. Untuk mengetahui informasi selengkapnya, lihat Deskripsi resource yang dimonitor.
Setiap jenis resource yang dimonitor dan didukung memiliki entri dalam Daftar resource yang dimonitor. Entri dalam daftar dibuat dari deskripsi resource yang dimonitor. Bagian ini menjelaskan informasi yang diambil dalam deskripsi resource yang dipantau dan menunjukkan cara informasi tersebut ditampilkan dalam daftar.
Contoh jenis resource yang dimonitor
Gambar berikut menunjukkan entri dalam daftar untuk bucket Cloud Storage:
Semua entri dalam daftar menyertakan informasi berikut:
- Type: Header dalam entri mencantumkan jenis resource yang dimonitor;
gcs_bucket
dalam contoh. - Nama tampilan: Deskripsi singkat tentang resource yang dipantau.
- Deskripsi: Deskripsi panjang dari resource yang dimonitor.
- Label: Kumpulan dimensi untuk mengklasifikasikan data. Untuk informasi selengkapnya, lihat Label.
Jenis metrik
Jenis metrik menjelaskan pengukuran yang dapat dikumpulkan dari resource yang dimonitor. Jenis metrik mencakup deskripsi tentang apa yang diukur dan interpretasi pengukuran. Cloud Monitoring mendukung sekitar 6.500 jenis metrik, dan memberi Anda kemampuan untuk menentukan jenis baru.Jenis metrik mencakup jumlah panggilan API, statistik penggunaan disk, konsumsi penyimpanan, dan banyak lagi.
Setiap jenis metrik dijelaskan secara formal dalam struktur data yang disebut deskripsi metrik. Untuk informasi selengkapnya, lihat Deskripsi metrik.
Setiap jenis metrik bawaan memiliki entri di halaman Daftar metrik. Entri dalam tabel ini dibuat dari deskripsi metrik. Bagian ini menjelaskan informasi yang diambil dalam jenis metrik dan menunjukkan cara informasi tersebut ditampilkan dalam materi referensi.
Contoh jenis metrik
Gambar berikut menunjukkan entri untuk jenis metrik Cloud Storage:
Jenis metrik ditampilkan dalam tabel, dan header tabel menjelaskan tata letak informasi. Bagian ini menggunakan satu entri sebagai contoh, tetapi semua tabel menggunakan format yang sama.
Contoh entri tabel Cloud Storage memberi Anda informasi berikut tentang satu jenis metrik:
Jenis metrik: ID untuk jenis metrik,
storage.googleapis.com/api/request_count
dalam contoh.Awalan
storage.googleapis.com
berfungsi sebagai namespace untuk Cloud Storage. Semua jenis metrik yang terkait dengan jenis resource yang dipantau tertentu menggunakan namespace yang sama.Namespace dihilangkan dari entri dalam tabel.
Semua jenis metrik yang terkait dengan Cloud Storage tercantum dalam tabel untuk metrik Cloud Storage.
Tahap peluncuran: Blok berwarna yang menunjukkan tahap peluncuran jenis metrik dengan nilai seperti Alpha, Beta, dan GA.
Nama tampilan: String singkat yang menjelaskan jenis metrik, “Jumlah permintaan” dalam contoh.
Jenis, Jenis, Unit: Baris ini memberikan informasi untuk menafsirkan nilai data: contoh menunjukkan metrik delta yang dicatat sebagai bilangan bulat 64-bit tanpa unit (yaitu nilai
1
).Jenis: Contoh ini adalah metrik delta, yang mencatat perubahan selama jangka waktu tertentu. Artinya, setiap titik data mencatat jumlah panggilan API sejak titik data sebelumnya ditulis. Untuk informasi selengkapnya tentang jenis, lihat Jenis nilai dan jenis metrik.
Jenis: Contoh ini mencatat nilainya sebagai bilangan bulat 64-bit. Untuk informasi selengkapnya tentang jenis, lihat Jenis nilai dan jenis metrik.
Unit: Metrik ini tidak memerlukan unit eksplisit karena mewakili jumlah; angka
1
digunakan untuk menunjukkan bahwa tidak ada unit yang diperlukan.
Resource yang dimonitor: Resource yang dimonitor yang jenis metriknya tersedia. Nilai di sini sama dengan yang dijelaskan dalam Jenis resource yang dipantau.
Deskripsi: Informasi yang lebih mendetail tentang apa yang direkam dan caranya. Tetapkan dalam huruf miring untuk membedakannya dengan label.
Label: Kumpulan dimensi untuk mengklasifikasikan data. Untuk informasi selengkapnya, lihat Label.
Saat mengakses data pemantauan melalui Cloud Monitoring API, Anda menyertakan project Google Cloud dalam panggilan API. Anda hanya dapat mengambil data yang
terlihat oleh project Google Cloud tersebut. Misalnya, jika Anda meminta data project untuk jenis metrik storage.googleapis.com/api/request_count
, Anda akan melihat jumlah API hanya untuk bucket Cloud Storage di project Anda.
Jika project Anda tidak menggunakan bucket Cloud Storage, tidak ada data metrik yang ditampilkan.
Jenis metrik bawaan
Jenis metrik bawaan ditentukan oleh layanan Google Cloud, termasuk Cloud Monitoring. Jenis metrik ini menjelaskan pengukuran standar untuk berbagai infrastruktur umum dan tersedia untuk digunakan oleh siapa saja.
Daftar Metrik menampilkan seluruh kumpulan jenis metrik bawaan. Metrik yang tercantum di halaman Daftar metrik eksternal adalah subset khusus dari metrik bawaan yang ditentukan oleh Cloud Monitoring dalam kemitraan dengan project open source atau penyedia pihak ketiga. Biasanya, metrik ini memiliki awalanexternal.googleapis.com
.
Metrik kustom
Saat mem-build aplikasi, Anda mungkin memiliki properti tertentu yang ingin diukur, yang tidak memiliki metrik bawaan di Cloud Monitoring. Dengan Cloud Monitoring, Anda dapat menentukan jenis metrik sendiri atau mengimpor jenis metrik dari sumber eksternal. Jenis metrik ini
disebut metrik kustom. Jika metrik memiliki awalan custom.googleapis.com
atau prometheus.googleapis.com
, metrik tersebut adalah metrik kustom.
Metrik terakhir biasanya berasal dari Google Cloud Managed Service for Prometheus.
Misalnya, jika ingin melacak jumlah widget yang dijual oleh toko, Anda harus menggunakan metrik kustom. Untuk informasi selengkapnya, lihat Ringkasan metrik yang ditentukan pengguna.
Label
Label adalah pasangan nilai kunci yang dapat digunakan untuk memberikan informasi tentang nilai data.
Label metrik dan resource yang dimonitor
Definisi jenis metrik dan resource yang dimonitor menyertakan label. Label adalah pengklasifikasi untuk data yang dikumpulkan; label membantu mengategorikan data untuk analisis yang lebih mendalam. Contoh:
- Jenis metrik Cloud Storage
storage.googleapis.com/api/request_count
memiliki dua label,response_code
danmethod
. - Jenis resource yang dipantau Cloud Storage
gcs_bucket
memiliki tiga label,project_id
,bucket_name
, danlocation
. Label mengidentifikasi instance jenis resource tertentu.
Oleh karena itu, semua data yang dikumpulkan untuk permintaan API dari bucket Cloud Storage diklasifikasikan berdasarkan metode yang dipanggil, kode respons untuk panggilan, nama, lokasi, dan project bucket yang terlibat. Kumpulan label bervariasi menurut metrik atau jenis resource yang dimonitor; label yang tersedia didokumentasikan di halaman Daftar metrik dan Daftar resource yang dimonitor.
Dengan melacak kode respons, nama metode, dan lokasi saat menghitung panggilan API, Anda dapat mengambil jumlah panggilan ke metode API tertentu, atau jumlah panggilan yang gagal ke metode apa pun, atau jumlah panggilan yang gagal ke metode tertentu di lokasi tertentu.
Jumlah label dan jumlah nilai yang dapat diasumsikan masing-masing disebut sebagai kardinalitas. Kardinalitas adalah jumlah deret waktu yang mungkin dapat dikumpulkan untuk pasangan jenis metrik dan resource yang dimonitor: ada satu deret waktu untuk setiap kombinasi nilai labelnya. Untuk informasi selengkapnya, lihat Kardinalitas: deret waktu dan label.
Label metadata resource
Selain label yang ditentukan pada metrik dan jenis resource yang dimonitor, Monitoring secara internal mengumpulkan informasi tambahan tentang resource yang dimonitor dan menyimpan informasi ini dalam label metadata sistem. Label metadata sistem ini tersedia bagi pengguna sebagai nilai hanya baca. Beberapa resource juga memungkinkan pengguna membuat label metadata resource mereka sendiri saat mengonfigurasi resource seperti instance VM di Konsol Google Cloud.
Label metadata sistem dan pengguna secara kolektif disebut label metadata resource. Anda dapat menggunakan label ini seperti label yang ditentukan pada metrik dan jenis resource yang dimonitor dalam filter deret waktu. Untuk mengetahui informasi selengkapnya tentang pemfilteran, lihat Filter pemantauan.
Deret waktu: data dari resource yang dipantau
Bagian ini membahas definisi data pemantauan dan cara mengaturnya dalam deret waktu. Di sinilah komponen konseptual model metrik menjadi artefak konkret.
Cloud Monitoring menyimpan pengukuran reguler dari waktu ke waktu untuk pasangan jenis metrik dan resource yang dimonitor. Pengukuran dikumpulkan ke dalam deret waktu, dan setiap deret waktu berisi item berikut:
Nama jenis metrik yang menjadi bagian dari deret waktu, dan satu kombinasi nilai untuk label metrik.
Serangkaian pasangan (stempel waktu, nilai). Nilai adalah pengukuran, dan stempel waktu adalah waktu pengukuran dilakukan.
Resource yang dimonitor yang merupakan sumber data deret waktu, dan satu kombinasi nilai untuk label resource.
Deret waktu dibuat untuk setiap kombinasi label metrik dan resource yang menghasilkan data.
Contoh bergaya: Jenis metrik storage.googleapis.com/api/request_count
dapat memiliki banyak deret waktu untuk bucket Cloud Storage
project Anda. Ilustrasi berikut menunjukkan beberapa kemungkinan deret waktu.
Dalam ilustrasi, nilai bucket: xxxx
mewakili nilai label bucket_name
dalam jenis resource yang dimonitor, dan response_code
dan method
adalah label dalam jenis metrik. Ada satu deret waktu untuk setiap
kombinasi nilai dalam label resource dan metrik; ilustrasi
menunjukkan beberapa di antaranya:
Cloud Monitoring tidak mencatat deret waktu yang "kosong". Dalam contoh bucket Cloud Storage, jika Anda tidak menggunakan bucket tertentu atau tidak pernah memanggil metode API tertentu, tidak ada data yang dikumpulkan untuk label tersebut, dan tidak ada deret waktu yang menyebutkannya. Artinya, jika project Anda tidak memiliki data sama sekali untuk metrik tertentu, Anda tidak akan pernah melihat jenis metrik tersebut.
Jenis metrik tidak menunjukkan jenis resource yang dimonitor yang ditemukan dalam deret waktu metrik. Untuk Cloud Storage, hanya ada satu jenis resource yang dimonitor—gcs_bucket
. Beberapa jenis metrik disambungkan dengan lebih dari satu resource yang dimonitor.
Contoh langsung: Jika memiliki project Google Cloud, Anda dapat mencoba widget APIs Explorer, yang terletak di halaman referensi untuk metode timeSeries.list
di Monitoring API.
Buka halaman referensi
timeSeries.list
.Di panel berlabel Coba metode ini, masukkan kode berikut:
- name:
projects/PROJECT_ID
GantiPROJECT_ID
dengan ID project Google Cloud Anda. - filter:
metric.type="logging.googleapis.com/log_entry_count" resource.type="gce_instance"
- interval.start_time: Masukkan waktu mulai dan pastikan waktu tersebut 20 menit lebih awal dari waktu berakhir.
- interval.end_time: Masukkan waktu berakhir.
- name:
Jika berhasil, permintaan akan menampilkan data deret waktu yang cocok dengan permintaan. Tampilannya akan terlihat seperti cuplikan berikut:
{ "timeSeries": [ { "metric": { "labels": { "severity": "INFO", "log": "compute.googleapis.com/activity_log" }, "type": "logging.googleapis.com/log_entry_count" }, "resource": { "type": "gce_instance", "labels": { "instance_id": "0", "zone": "us-central1", "project_id": "your-project-id" } }, "metricKind": "DELTA", "valueType": "INT64", "points": [ { "interval": { "startTime": "2024-03-29T13:53:00Z", "endTime": "2024-03-29T13:54:00Z" }, "value": { "int64Value": "0" } }, ... ] }, ... ] }
Untuk informasi selengkapnya tentang cara menggunakan widget APIs Explorer, termasuk pemecahan masalah, lihat APIs Explorer.
Kardinalitas: deret waktu dan label
Setiap deret waktu dikaitkan dengan pasangan metrik dan jenis resource yang dipantau tertentu. Setiap jenis metrik dan resource yang dimonitor menyediakan sejumlah label. Di Cloud Monitoring, jumlah kombinasi nilai unik untuk kumpulan label adalah kardinalitas jenis metrik atau jenis resource yang dimonitor. Nilai ini disebut sebagai kardinalitas metrik dan kardinalitas resource, dan menentukan jumlah deret waktu yang mungkin dihasilkan, yaitu kardinalitas total.
Metrik, resource, dan kardinalitas total
Misalnya, Anda memiliki jenis metrik yang menentukan dua label,
color
dan zone
. Kardinalitas metrik bergantung pada jumlah kemungkinan nilai yang dimiliki label tersebut:
- Jika hanya ada tiga kemungkinan warna, yaitu “merah”,
“hijau”, dan “biru”, label
color
dapat memiliki hingga tiga nilai yang berbeda. - Jika hanya ada dua kemungkinan zona, yaitu “timur” dan
“barat”, label
zone
dapat memiliki hingga dua nilai yang berbeda.
Kardinalitas metrik ini adalah 6 (3×2). Jika ada 1.000 kemungkinan nilai untuk label color
, dan jika setiap warna dapat muncul di setiap zona, kardinalitas metriknya adalah 2.000 (1.000×2). Penghitungan yang sama berlaku
jika ini adalah label pada jenis resource yang dimonitor, bukan pada jenis metrik.
Nilai kardinalitas ini adalah maksimum, berdasarkan jumlah kombinasi kemungkinan nilai label. Nilai yang efektif dan nyata mungkin jauh lebih rendah jika semua kombinasi nilai label tidak benar-benar terjadi. Misalnya, jika setiap warna hanya muncul di satu zona, bukan di kedua zona, jumlah maksimum deret waktu yang Anda lihat dalam sistem yang berjalan adalah 1.000. Namun, kegunaan kardinalitas efektif bergantung pada alasan kombinasi tertentu tidak muncul dan apakah kombinasi tersebut mungkin muncul di masa mendatang.
Saat ditulis, data deret waktu diklasifikasikan menurut metrik dan jenis resource yang dimonitor. Untuk setiap pasangan jenis metrik dan resource, kardinalitas total adalah hasil dari kardinalitas metrik dan kardinalitas resource. Jika Anda memiliki metrik dengan kardinalitas 1.000, dan resource dengan kardinalitas 100, dan jika setiap nilai label muncul, Anda memiliki 100.000 deret waktu (1.000×100).
Saat mendesain metrik Anda sendiri, pastikan kumpulan kemungkinan nilai untuk label apa pun dibatasi. Sekumpulan kecil nilai diskrit (seperti “merah”, “hijau”, dan “biru”) adalah pendekatan yang lebih disukai. Misalnya, jika menggunakan nilai RGB 8-bit untuk labelcolor
, Anda dapat memiliki lebih dari 16 juta nilai
yang berbeda. Jangan gunakan nilai beresolusi tinggi seperti stempel waktu,
berbagai jenis ID unik, ID pengguna, alamat IP, URL tanpa parameter, dan sebagainya, untuk label metrik.
Performa dan kardinalitas kueri
Saat Anda membuat kueri untuk data, volume data yang Anda minta adalah faktor terbesar dalam performa kueri: kueri untuk data selama satu jam umumnya lebih cepat daripada kueri yang sama yang mencakup enam bulan. Namun, volume data yang ditampilkan oleh permintaan juga sensitif terhadap jumlah deret waktu dalam permintaan. Kueri yang mengambil data selama dua bulan untuk metrik berkardinalitas rendah kemungkinan akan lebih cepat daripada kueri lain yang mengambil data selama dua bulan untuk metrik berkardinalitas sangat tinggi, karena jumlah data yang diambil.
Kardinalitas terutama bergantung pada jumlah nilai yang dapat dimiliki label Anda, bukan pada jumlah label. Secara umum, Anda tidak memiliki kontrol atas kardinalitas resource, seperti saat jumlah pod atau VM berubah berdasarkan kebutuhan bisnis. Namun, saat menyerap metrik ke Cloud Monitoring, bukan menggunakan metrik sistem, Anda sering kali memiliki beberapa kontrol atas kardinalitas metrik. Misalnya, dengan metrik kustom yang ditentukan pengguna, Anda menentukan label dan kemungkinan nilainya. Jika Anda menyerap metrik Prometheus, Anda dapat menggunakan pelabelan ulang untuk mengubah kumpulan label dan menghapus deret waktu yang tidak ingin diserap.
Anda dapat menggunakan halaman Pengelolaan Metrik Cloud Monitoring untuk mengidentifikasi metrik yang mungkin memiliki masalah kardinalitas. Untuk melihat halaman Pengelolaan Metrik, lakukan tindakan berikut:
-
Di konsol Google Cloud, buka halaman
Metrics management:Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.
- Di toolbar, pilih jangka waktu. Secara default, halaman Pengelolaan Metrik menampilkan informasi tentang metrik yang dikumpulkan dalam satu hari sebelumnya.
Untuk informasi selengkapnya tentang halaman Pengelolaan Metrik, lihat Melihat dan mengelola penggunaan metrik.
Untuk latar belakang teknis tentang cara Cloud Monitoring menyimpan dan mengambil data deret waktu, lihat Monarch: Database Deret Waktu dalam Memori Skala Planet Google.
Untuk mengetahui informasi tentang batas metrik yang ditentukan pengguna di Cloud Monitoring, lihat Metrik yang ditentukan pengguna.