Dokumen ini menjelaskan cara membuat kebijakan dan diagram pemberitahuan untuk memantau kuota yang dialokasikan oleh Google Cloud kepada Anda, dan mencakup beberapa contoh. Google Cloud menetapkan berbagai kuota yang dapat Anda gunakan untuk melacak dan membatasi resource yang digunakan oleh suatu project atau organisasi. Untuk mengetahui informasi umum tentang kuota, termasuk informasi kuota alokasi dan kuota kapasitas, lihat Bekerja dengan kuota.
Sebelum memulai
Dokumen ini mengasumsikan Anda telah memahami data deret waktu dan manipulasinya. Referensi berikut memberikan informasi tambahan:
- Untuk informasi tentang cara menggunakan data deret waktu, lihat Pemfilteran dan agregasi.
- Untuk definisi istilah gauge, delta, dan kumulatif, lihat Jenis metrik.
- Untuk mengetahui detail tentang fungsi yang digunakan untuk menggabungkan deret waktu, lihat
Aligner
danReducer
.
Manajemen kuota
Cloud Monitoring mengelola kuota dengan dua cara:
Kuota konsumen: Untuk jenis kuota ini, resource yang dimonitor adalah
consumer_quota
. Metrik untuk resource ini adalah subkumpulan metrikserviceruntime
.Sebagian besar contoh di halaman ini adalah contoh kuota konsumen.
Kuota khusus resource: Beberapa layanan menyediakan resource yang dimonitor yang memiliki metrik khusus resource untuk kuota. Jenis metrik ini muncul dalam kelompok yang terdiri dari tiga jenis dan mengikuti format penamaan:
service/quota/quota-type/exceeded
service/quota/quota-type/limit
service/quota/quota-type/usage
Misalnya, Compute Engine memiliki resource
compute.googleapis.com/VpcNetwork
. Metrik terkait kuota yang terkait dengan resource ini adalah subkumpulancompute.googleapis.com/quota
dari metrikcompute
. Ada tiga jenis metrik yang terkait dengan kuota "instance per jaringan VPC":quota/instances_per_vpc_network/exceeded
quota/instances_per_vpc_network/limit
quota/instances_per_vpc_network/usage
Mengidentifikasi metrik kuota dan nama batas
Data mentah tentang pemakaian kuota, khususnya untuk kuota konsumen, dapat mencakup informasi tentang berbagai kuota. Untuk mengekstrak informasi tentang kuota tertentu untuk diagram atau kebijakan pemberitahuan, Anda perlu mengidentifikasi subkumpulan data kuota tersebut.
Bergantung pada sumbernya, data kuota mungkin menyertakan label yang dapat Anda gunakan untuk mengisolasi informasi yang Anda inginkan. Label ini mencakup:
- Metrik kuota: Metrik kuota adalah ID untuk jenis kuota; metrik ini bukan salah satu jenis metrik yang dijelaskan dalam Daftar metrik. Misalnya, semua data kuota konsumen ditulis sebagai jenis metrik
serviceruntime.googleapis.com
sepertiquota/allocation/usage
. Jenis metrik ini memiliki labelquota_metric
yang dapat digunakan untuk memfilter kuota tertentu, misalnya data penggunaan alokasi. - Nama batas: Nama batas menunjukkan batas pada jenis kuota tertentu.
Kuota dapat memiliki lebih dari satu batas yang dikaitkan dengannya. Misalnya, kuota untuk panggilan baca mungkin memiliki batas per menit sebanyak 100 dan batas per hari sebanyak 1.000, dengan dua nama batas,
readsPerMinute
danreadsPerDay
. Jenis metrik terkait kuota mungkin memiliki kolomlimit_name
untuk nilai ini.
Semua jenis metrik serviceruntime.googleapis.com/quota
menyediakan label quota_metric
, tetapi hanya beberapa yang menyertakan label limit_name
.
Jenis metrik khusus resource untuk kuota mencakup label limit_name
.
Tidak semua layanan Google Cloud mendukung metrik kuota. Untuk menentukan apakah layanan mendukung metrik kuota dan mengidentifikasi nilai label khusus kuota, Anda dapat menggunakan prosedur berikut:
-
Di panel navigasi konsol Google Cloud, pilih IAM & Admin, lalu pilih Quotas:
Klik view_column View column dan tambahkan kolom berikut ke tampilan kuota:
- Metrik: Kolom ini menampilkan nilai label
quota_metric
. - Limit name: Kolom ini menampilkan nilai label
limit_name
. - Resource yang dipantau: Jika diisi, kuota akan menggunakan resource
yang dimonitor dan tercantum. Jika kosong, resource yang dimonitor untuk kuota tersebut adalah
consumer_quota
.
- Metrik: Kolom ini menampilkan nilai label
Temukan kuota yang diinginkan.
Misalnya, kuota subnetwork Compute Engine API mencantumkan Metric sebagai
compute.googleapis.com/subnetworks
, Limit name sebagaiSUBNETWORKS-per-project
, dan tidak mencantumkan Monitored resource. Oleh karena itu, resource yang dipantau untuk kuota ini adalahconsumer_quota
.
Contoh: Melihat penggunaan untuk metrik kuota konsumen tertentu
Tujuannya adalah membuat diagram yang menampilkan total kuota penyimpanan disk Compute Engine menurut region. Contoh kuota konsumen ini mengambil data quota/allocation/usage
, lalu memfilter data sehingga penggunaan alokasi untuk metrik kuota tertentu ditampilkan:
Di konsol Google Cloud, pilih Cloud Monitoring, lalu pilih Metrics Explorer.
Pilih tab Configuration
Di toolbar, tetapkan jangka waktu ke satu bulan dengan memilih 1 jt.
Luaskan menu Line chart dan pilih Stacked bar chart.
Konfigurasikan Metrics Explorer untuk menampilkan penggunaan kuota alokasi:
- Klik Select a metric, lalu masukkan
allocation
di filter_list Filter bar. - Pilih Consumer Quota untuk resource.
- Pilih Kuota untuk kategori metrik.
- Pilih AllocationQuota usage untuk metrik, lalu klik Apply.
Diagram menampilkan penggunaan kuota alokasi sebagai diagram batang selama periode enam minggu. Dengan melihat legenda, Anda akan melihat bahwa diagram menampilkan penggunaan kuota untuk beberapa layanan.
Jika Anda menggunakan Cloud Monitoring API, nilai filter yang setara adalah:
metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota"
Anda dapat melihat nilai filter ini dengan meluaskan menu Resource type, lalu memilih Direct filter mode.
- Klik Select a metric, lalu masukkan
Untuk membatasi diagram ke layanan Compute Engine, tambahkan filter
service = compute.googleapis.com
:Jika Anda menggunakan Cloud Monitoring API, nilai filter yang setara adalah:
metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" resource.label.service="compute.googleapis.com"
Diagram kini menampilkan deret waktu untuk penggunaan kuota yang dialokasikan untuk kuota Compute Engine. Legenda menampilkan nilai label
quota_metric
untuk setiap deret waktu yang ditampilkan. Nilai ini mengidentifikasi kuota tertentu. Misalnya,compute.googleapis.com/disks_total_storage
mengidentifikasi deret waktu untuk total kuota penyimpanan disk Compute Engine.Diagram hanya menampilkan penggunaan kuota untuk kuota yang telah dicatat penggunaan. Misalnya, jika project tidak memiliki resource Compute Engine, memfilter layanan
compute.googleapis.com
akan menghasilkan diagram tanpa data.Untuk membuat diagram yang menampilkan total penggunaan kuota penyimpanan disk Compute Engine, gunakan filter
quota_metric = compute.googleapis.com/disks_total_storage
:Jika Anda menggunakan Cloud Monitoring API, nilai filter yang setara adalah:
metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" metric.label.quota_metric="compute.googleapis.com/disks_total_storage"
Diagram sebelumnya menampilkan deret waktu untuk region
us-central1
danus-east1
, serta untuk beberapa zona termasuk zonaus-central1-a
.Untuk menyaring diagram agar hanya menampilkan data untuk region, tanpa zona, tambahkan filter berdasarkan label
location
. Untuk contoh ini, dengan kedua wilayah diawali denganus-
dan diakhiri dengan1
, filter yang menggunakan ekspresi regulerlocation =~ ^us.*1$
akan berfungsi dengan baik:
Untuk kuota konsumen, nilai label quota_metric
mengidentifikasi layanan dan penggunaan kuota spesifik yang dipantau. Saat membuat diagram atau kebijakan pemberitahuan yang memantau metrik kuota tertentu, Anda akan menggunakan informasi tersebut.
Kebijakan pemberitahuan di Cloud Monitoring
Kebijakan pemberitahuan adalah cara mengonfigurasi Monitoring untuk memberi tahu Anda ketika sesuatu, seperti mencapai 85% dari batas kuota, terjadi.
Kebijakan pemberitahuan adalah kumpulan kondisi dan informasi notifikasi:
- Kondisi menjelaskan hal yang dipantau, bagaimana data deret waktu untuk resource tersebut digabungkan, dan kapan insiden dibuat. Kebijakan pemberitahuan harus menentukan setidaknya satu kondisi.
- Saluran notifikasi menentukan siapa yang akan diberi tahu dan bagaimana mereka akan diberi tahu saat terjadi insiden. Misalnya, Anda dapat mengonfigurasi kebijakan pemberitahuan untuk mengirim email ke orang tertentu atau ke sekelompok orang.
Ada dua teknik yang dapat Anda gunakan untuk membuat kondisi kebijakan pemberitahuan:
Menggunakan filter Monitoring untuk memilih dan memanipulasi data. Misalnya, saat Anda menggunakan antarmuka grafis untuk membuat kondisi kebijakan pemberitahuan, Anda sedang membuat filter. Contoh yang ditampilkan dalam Bekerja dengan metrik kuota menggunakan filter untuk memilih data untuk diagram. Anda juga dapat menggunakan filter dalam permintaan ke Monitoring API.
Menggunakan MQL untuk memilih dan memanipulasi data. MQL adalah bahasa kueri berbasis teks. Dengan editor kode MQL, Anda dapat membuat kueri yang tidak dapat dibuat dengan teknik berbasis filter. Sebaiknya gunakan MQL untuk membuat kebijakan pemberitahuan berbasis rasio. Untuk mengetahui informasi selengkapnya, lihat contoh kebijakan pemberitahuan MQL.
Halaman ini membahas kedua teknik tersebut. Anda juga dapat membuat diagram menggunakan salah satu teknik.
Memfilter contoh kebijakan pemberitahuan
Di bagian ini, setiap subbagian mencakup representasi JSON dari kebijakan pemberitahuan, beserta sepasang tabel yang menjelaskan cara mengonfigurasi kebijakan di Konsol Google Cloud:
- Tabel pertama menjelaskan apa yang dipantau dan bagaimana data tersebut akan digabungkan.
- Tabel kedua menjelaskan kapan sebuah insiden akan dibuat.
Contoh-contoh ini ditujukan untuk pendekatan berbasis filter.
Tidak satu pun dari kebijakan ini yang menghitung rasio. Untuk contoh berbasis rasio, lihat contoh kebijakan pemberitahuan MQL.
Pemberitahuan pada quota/exceeded
error
Anda dapat membuat kebijakan pemberitahuan untuk memberi tahu Anda jika layanan dalam project Google Cloud Anda melaporkan error kuota terlampaui. Anda dapat membuat jenis kebijakan ini dengan menggunakan Konsol Google Cloud atau Cloud Monitoring API.
Menggunakan Konsol Google Cloud
Konten lainnya dalam subbagian ini ditujukan untuk dialog kondisi pada kebijakan pemberitahuan.
Isi dialog New condition menggunakan setelan dalam tabel berikut.
Setelan ini menentukan bahwa Anda ingin memantau data deret waktu untuk metrik serviceruntime
/quota/exceeded
bagi semua layanan di project Google Cloud, dan bahwa Anda ingin mengelompokkan data berdasarkan batas kuota.
Dialog Kondisi baru Kolom |
Nilai |
---|---|
Resource and Metric | Di menu Resources, pilih Consumer Quota. Di menu Kategori metrik, pilih Kuota. Di menu Metrics, pilih Quota exceeded error. ( metric.type adalah serviceruntime.googleapis.com/quota/exceeded ,dan resource.type adalah consumer_quota ).
|
Filter |
Tambahkan filter sehingga diagram hanya menampilkan data untuk layanan yang ingin Anda pantau. Misalnya, untuk memantau layanan Identity and Access Management, tambahkan filter berikut: service = iam.googleapis.com. Jika kolom filter kosong, semua data metrik yang tersedia akan disertakan dalam diagram. |
Rolling window | Pilih 1 m |
Rolling window function | Pilih count true
Metrik ini berjenis Untuk metrik ini, fungsi rolling window |
Di sepanjang deret waktu Agregasi deret waktu |
Pilih Kolom agregasi ditetapkan secara otomatis ke |
Di seluruh deret waktu Mengelompokkan deret waktu menurut |
Pilih Opsi ini mengelompokkan data berdasarkan jenis nama |
Selesaikan dialog Configure trigger dengan menggunakan setelan berikut. Setelan ini menyebabkan kebijakan pemberitahuan membuat pemberitahuan jika jumlah error yang melebihi kuota melebihi nilai 0 untuk 1 bulan. Nilai 0 dipilih di sini karena error kuota terlampaui merupakan hal yang tidak terduga dan merupakan indikasi bahwa kuota perlu ditambah atau layanan perlu diubah untuk mengurangi permintaan API. Sebaiknya gunakan nilai minimum yang lebih tinggi.
Dialog Konfigurasi pemicu Kolom |
Nilai |
---|---|
Condition type | Threshold |
Alert trigger | Any time series violates |
Threshold position | Above threshold |
Threshold value | 0 |
Retest window | 1 mnt |
Menggunakan Cloud Monitoring API
Anda dapat membuat kebijakan pemberitahuan ini menggunakan metode API alertPolicies.create
. Anda dapat memanggil Cloud Monitoring API secara langsung, dengan menggunakan Google Cloud CLI, atau dengan menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat
Membuat kebijakan.
Untuk mengetahui informasi tentang cara merepresentasikan kebijakan pemberitahuan dalam JSON atau YAML, lihat Contoh kebijakan.
Berikut adalah representasi kebijakan pemberitahuan ini dalam format JSON.
{
"combiner": "OR",
"conditions": [
{
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.quota_metric"
],
"perSeriesAligner": "ALIGN_COUNT_TRUE"
}
],
"comparison": "COMPARISON_GT",
"duration": "60s",
"filter": "metric.type=\"serviceruntime.googleapis.com/quota/exceeded\" resource.type=\"consumer_quota\"",
"trigger": {
"count": 1
}
},
"displayName": "Quota exceeded error by label.quota_metric SUM",
}
],
"displayName": "Quota exceeded policy",
}
Pemberitahuan pada quota/allocation/usage
absolut
Anda dapat membuat kebijakan pemberitahuan untuk memberi tahu Anda jika penggunaan kuota alokasi untuk layanan tertentu dalam project Google Cloud melebihi batas yang ditentukan pengguna. Anda dapat membuat jenis kebijakan ini dengan menggunakan Konsol Google Cloud atau Cloud Monitoring API.
Menggunakan Konsol Google Cloud
Konten lainnya dalam subbagian ini ditujukan untuk dialog kondisi kebijakan pemberitahuan.
Isi dialog New condition menggunakan setelan dalam
tabel berikut.
Setelan ini menentukan bahwa Anda ingin memantau data deret waktu untuk metrik serviceruntime
/quota/allocation/usage
untuk satu layanan di project Google Cloud, dan Anda ingin mengelompokkan data berdasarkan batas kuota.
Dialog Kondisi baru Kolom |
Nilai |
---|---|
Resource and Metric | Di menu Resources, pilih Consumer Quota. Di menu Kategori metrik, pilih Kuota. Di menu Metrics, pilih Allocation quota usage. ( metric.type adalah serviceruntime.googleapis.com/quota/allocation/usage ,dan resource.type adalah consumer_quota ).
|
Filter |
Tambahkan filter sehingga diagram hanya menampilkan data untuk layanan yang ingin Anda pantau. Misalnya, untuk memantau layanan Identity and Access Management, tambahkan filter berikut: service = iam.googleapis.com. Jika kolom filter kosong, semua data metrik yang tersedia akan disertakan dalam diagram. |
Rolling window | Pilih 1440 m Kecocokan periode adalah interval pengambilan sampel untuk metrik ini. |
Rolling window function | Pilih next older Fungsi rolling window ditetapkan ke |
Di sepanjang deret waktu Agregasi deret waktu |
Pilih Kolom agregasi ditetapkan secara otomatis ke |
Di seluruh deret waktu Mengelompokkan deret waktu menurut |
Pilih Opsi ini mengelompokkan data berdasarkan jenis nama |
Selesaikan dialog Configure trigger menggunakan setelan berikut. Setelan ini menyebabkan kebijakan pemberitahuan membuat pemberitahuan jika nilai deret waktu melebihi 2,5 untuk 1.440 m. Nilai 1440 m cocok dengan jendela yang bergulir. Nilai 2,5 dipilih untuk contoh ini, karena sedikit lebih tinggi dari nilai normal untuk sistem pengujian. Anda harus memilih nilai minimum berdasarkan layanan yang Anda pantau dan juga memahami rentang nilai yang diharapkan untuk metrik.
Dialog Konfigurasi pemicu Kolom |
Nilai |
---|---|
Condition type | Threshold |
Alert trigger | Any time series violates |
Threshold position | Above threshold |
Threshold value | 2.5 |
Retest window | 1.440 m |
Menggunakan Cloud Monitoring API
Anda dapat membuat kebijakan pemberitahuan ini menggunakan metode API alertPolicies.create
. Anda dapat memanggil Cloud Monitoring API secara langsung, dengan menggunakan Google Cloud CLI, atau dengan menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat
Membuat kebijakan.
Untuk mengetahui informasi tentang cara merepresentasikan kebijakan pemberitahuan dalam JSON atau YAML, lihat Contoh kebijakan.
Berikut adalah representasi kebijakan pemberitahuan ini dalam format JSON.
{
"combiner": "OR",
"conditions": [
{
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "86400s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.quota_metric"
],
"perSeriesAligner": "ALIGN_NEXT_OLDER"
}
],
"comparison": "COMPARISON_GT",
"duration": "86400s",
"filter": "metric.type=\"serviceruntime.googleapis.com/quota/allocation/usage\" resource.type=\"consumer_quota\" resource.label.\"service\"=\"iam.googleapis.com\"",
"thresholdValue": 2.5,
"trigger": {
"count": 1
}
},
"displayName": "Allocation quota usage for iam.googleapis.com by label.quota_metric SUM",
}
],
"displayName": "Absolute quota usage policy",
}
Contoh kebijakan pemberitahuan MQL
MQL adalah bahasa kueri berbasis teks yang menggunakan serangkaian operasi yang ditautkan oleh pipa. MQL memungkinkan Anda membuat kueri yang lebih andal dan fleksibel dibandingkan dengan filter Monitoring. Sebaiknya gunakan MQL untuk menyiapkan kebijakan pemberitahuan berbasis rasio. Misalnya, dengan MQL, Anda dapat menyiapkan rasio untuk penggunaan kuota kapasitas, yang memerlukan komputasi rasio metrik pengukur (batas) dan metrik delta (tarif).
Anda dapat membuat kebijakan pemberitahuan berbasis MQL menggunakan Konsol Google Cloud atau Monitoring API:
Konsol Google Cloud: Gunakan editor kode MQL saat membuat kondisi pemberitahuan. Untuk menampilkan editor kode, di toolbar dialog Create alerts policy, klik code Query Editor. Untuk mengetahui informasi selengkapnya tentang cara menggunakan editor ini, lihat Menggunakan editor kode untuk MQL.
Monitoring API: Gunakan metode
alertPolicies.create
dan berikan kondisi dari jenisMonitoringQueryLanguageCondition
. Jenis kondisi ini menggunakan kueri MQL sebagai nilai kolom. Untuk mengetahui informasi lebih lanjut tentang penggunaan Monitoring API dengan MQL, lihat Membuat kondisi untuk kebijakan pemberitahuan MQL.
Untuk informasi khusus MQL, lihat Menggunakan Bahasa Kueri Monitoring. Untuk mengetahui informasi selengkapnya tentang kebijakan pemberitahuan berbasis MQL, baca Kebijakan pemberitahuan dengan MQL.
Kebijakan pemberitahuan yang memantau rasio kuota kapasitas terhadap batas kuota
Pola kueri MQL berikut menjelaskan kebijakan pemberitahuan yang mengirim notifikasi saat penggunaan kecepatan per menit untuk layanan resource tertentu melebihi 80% dari batas tertentu:
fetch consumer_quota
| filter resource.service == 'sample.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/rate/net_usage
| align delta_gauge(1m)
| group_by [resource.project_id, metric.quota_metric, resource.location],
sum(value.net_usage)
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'Limit'
| group_by [resource.project_id, metric.quota_metric, resource.location],
sliding(1m), max(val()) }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Untuk menggunakan pola kueri ini, buat perubahan berikut:
- Ganti
sample.googleapis.com
dengan layanan yang ingin Anda pantau. - Ganti
Limit
untukmetric.limit_name
dengan batas yang ingin Anda lacak. Untuk mengetahui informasi tentang cara menemukan nama batas, lihat Mengidentifikasi metrik kuota dan nama batas - Ganti
1m
di fungsidelta_gauge
dansliding
dengan jendela yang sesuai untuk batas Anda.
Jangan ubah operasi every 1m
, yang menentukan jarak titik data
dalam hasil kueri.
Anda tidak dapat membuat kueri ini dengan filter.
Kebijakan pemberitahuan yang memantau rasio kuota kapasitas dengan karakter pengganti
MQL mendukung pemfilteran dengan karakter pengganti, ekspresi reguler, dan logika boolean. Misalnya, Anda dapat menggunakan MQL untuk membuat kebijakan pemberitahuan yang melacak beberapa batas dan memberikan peringatan jika ada batas yang terlampaui.
Pola kueri MQL berikut menjelaskan kebijakan pemberitahuan yang mengirim notifikasi saat penggunaan tarif per menit atau per hari untuk layanan resource apa pun melebihi 80%:
fetch consumer_quota
| filter resource.service =~ '.*'
| { { metric serviceruntime.googleapis.com/quota/rate/net_usage
| align delta_gauge(1m)
| group_by [resource.project_id, metric.quota_metric, resource.location],
sum(value.net_usage)
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name =~ '.*PerMinute.*'
| group_by [resource.project_id, metric.quota_metric, resource.location],
sliding(1m), max(val()) }
| ratio
; { metric serviceruntime.googleapis.com/quota/rate/net_usage
| align delta_gauge(23hr)
| group_by [resource.project_id, metric.quota_metric, resource.location],
sum(value.net_usage)
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name =~ '.*PerDay.*'
| group_by [resource.project_id, metric.quota_metric, resource.location],
sliding(23hr), max(val()) }
| ratio }
| union
| every 1m
| condition gt(val(), 0.8 '1')
Pada kueri sebelumnya, argumen untuk aligner delta_gauge
ditetapkan ke
23 jam, bukan 1 hari. MQL hanya dapat memerlukan
data selama 23 jam 30 menit, dan untuk tujuan komputasi,
aligner delta_gauge
menambahkan satu jam ke periode perataan. Jika Anda menggunakan delta_gauge(1d)
, kondisi tersebut tidak dapat disimpan karena kondisi tersebut memerlukan data selama 25 jam. Perilaku ini berbeda dengan
aligner next_older
, yang tidak melakukan padding jendela perataan.
Untuk menggunakan pola kueri ini, buat perubahan berikut:
- Ganti ekspresi reguler untuk
resource.service
dengan ekspresi reguler untuk layanan yang ingin Anda lacak. - Dalam rasio pertama:
- Ganti
.*PerMinute.*
untukmetric.limit_name
dengan ekspresi reguler untuk grup batas pertama yang ingin Anda lacak. Untuk mengetahui informasi tentang cara menemukan nama batas, lihat Mengidentifikasi metrik kuota dan nama batas - Ganti
1m
di fungsidelta_gauge
dansliding
dengan jendela yang sesuai dengan batas Anda.
- Ganti
- Dalam rasio kedua:
- Ganti
.*PerDay.*
untukmetric.limit_name
dengan ekspresi reguler untuk grup batas kedua yang ingin Anda lacak. - Ganti
23hr
di fungsidelta_gauge
dansliding
dengan jendela yang sesuai dengan batas Anda.
- Ganti
Jangan ubah operasi every 1m
, yang menentukan jarak titik data
dalam hasil kueri.
Anda tidak dapat membuat kueri ini dengan filter.
Notifikasi rasio tentang penggunaan kuota alokasi untuk satu batas
Pola kueri MQL berikut menjelaskan pemberitahuan yang memantau kapan penggunaan alokasi per hari untuk layanan resource tertentu melebihi 80% dari batas tertentu:
fetch consumer_quota
| filter resource.service == 'sample.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'Limit'
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Untuk menggunakan pola kueri ini, buat perubahan berikut:
- Ganti
sample.googleapis.com
dengan layanan yang ingin Anda pantau. - Ganti
Limit
untukmetric.limit_name
dengan batas yang ingin Anda lacak. Untuk mengetahui informasi tentang cara menemukan nama batas, lihat Mengidentifikasi metrik kuota dan nama batas
Jangan ubah operasi every 1m
, yang menentukan jarak titik data
dalam hasil kueri.
Contoh: Penggunaan CPU sebesar 75% di region mana pun
Kueri berikut membuat kebijakan pemberitahuan yang terpicu saat penggunaan CPU instance VM Compute Engine melebihi 75% batas di region mana pun:
fetch consumer_quota
| filter resource.service == 'compute.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'CPUS-per-project-region'
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.75 '1')
Kebijakan kuota konsumen ini menggunakan nama batas CPUS-per-project-region
dalam kuota "CPU" Compute Engine API. Untuk mengetahui informasi tentang cara menemukan nama batas, lihat Mengidentifikasi metrik kuota dan nama batas.
Kebijakan pemberitahuan yang memantau rasio kuota alokasi untuk layanan apa pun
MQL mendukung pemfilteran dengan karakter pengganti, ekspresi reguler, dan logika boolean. Misalnya, Anda dapat menggunakan MQL untuk membuat pemberitahuan yang melacak beberapa batas atau layanan, serta memperingatkan Anda jika ada batas atau layanan yang melebihi nilai minimum.
Kueri MQL berikut menjelaskan pemberitahuan yang memantau kapan penggunaan alokasi per hari untuk layanan resource apa pun melebihi 80% untuk batas kuota:
fetch consumer_quota
| filter resource.service =~ '.*'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Anda dapat menggunakan kueri ini seperti yang ditampilkan, atau Anda dapat mengganti ekspresi reguler untuk resource.service
dengan ekspresi reguler untuk layanan yang ingin dilacak. Anda juga dapat memfilter layanan tertentu dan menggunakan karakter pengganti dalam filter batas.
Jangan ubah operasi every 1m
, yang menentukan jarak titik data
dalam hasil kueri.
Contoh: Penggunaan CPU lebih tinggi dari 50% di zona tertentu
Kueri berikut membuat kebijakan pemberitahuan yang terpicu saat penggunaan CPU instance VM Compute Engine melebihi 50% batas di zona us-central1
mana pun. Kueri ini memfilter data limit
berdasarkan nama batas dan lokasi resource:
fetch consumer_quota
| filter resource.service == 'compute.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'CPUS-per-project-zone' &&
resource.location =~ 'us-central1-.*'
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.50 '1')
Kebijakan kuota konsumen ini menggunakan nama batas CPUS-per-project-zone
dalam kuota "CPU" Compute Engine API. Untuk mengetahui informasi tentang cara menemukan nama batas, lihat Mengidentifikasi metrik kuota dan nama batas.
Pemberitahuan rasio menggunakan kuota khusus resource
Anda dapat menggunakan MQL untuk menyiapkan rasio untuk metrik terkait kuota khusus resource. Dalam hal ini, Anda menentukan resource yang dimonitor khusus layanan dan menghitung rasio melalui sepasang metrik terkait kuota khusus resource.
Pola kueri berikut menjelaskan pemberitahuan yang memantau saat penggunaan kuota melebihi 80% batas:
fetch sample.googleapis.com/SampleResource
| { metric sample.googleapis.com/quota/samplemetric/usage
| align next_older(1d)
| group_by [resource.label_1, ... , resource.label_n,
metric.label_1, ... , metric.label_n],
max(val())
; metric sample.googleapis.com/quota/samplemetric/limit
| align next_older(1d)
| group_by [resource.label_1, ... , resource.label_n,
metric.label_1, ... , metric.label_n],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Untuk menggunakan pola kueri ini, buat perubahan berikut:
- Ganti
sample.googleapis.com
dengan layanan yang ingin Anda pantau. - Ganti
sampleResource
dengan resource terkait yang dimonitor. - Ganti
samplemetric
dengan string untuk grup jenis metrik. - Di operasi
group_by
, cantumkan setiap label resource dan metrik.
Contoh: Penggunaan CPU sebesar 75% di region mana pun
Misalnya, kueri MQL berikut menyiapkan pemberitahuan yang memantau kapan penggunaan kuota instances_per_vpc_network
Compute Engine melebihi 80% untuk ID jaringan apa pun:
fetch compute.googleapis.com/VpcNetwork
| { metric compute.googleapis.com/quota/instances_per_vpc_network/usage
| align next_older(1d)
| group_by [resource.resource_container, metric.limit_name,
resource.location, resource.network_id],
max(val())
; metric compute.googleapis.com/quota/instances_per_vpc_network/limit
| align next_older(1d)
| group_by [resource.resource_container, metric.limit_name,
resource.location, resource.network_id],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.80 '1')
Perhatikan bahwa kueri ini menggunakan jenis resource
compute.googleapis.com/VpcNetwork
, bukan consumer_quota
, dan memerlukan
rasio dua metrik compute.googleapis.com/quota/instances_per_vpc_network
,
usage
dan limit
.
Contoh diagram
Diagram menampilkan data deret waktu. Anda dapat menggunakan Metrics Explorer untuk membuat diagram. Dengan Metrics Explorer, Anda dapat menghapus diagram saat tidak lagi diperlukan, atau menyimpannya ke dasbor. Di tampilan dasbor, Anda dapat menambahkan diagram ke dasbor.
Jika hanya ingin mengonfigurasi diagram yang menampilkan data kuota, Anda dapat menggunakan setelan dalam tabel Kondisi baru. Kondisi pemberitahuan menggunakan notasi yang berbeda dengan alat diagram. Alat diagram mencakup Metrics Explorer dan mengonfigurasi diagram di dasbor kustom:Nama kolom dialog kondisi baru |
Diagram |
---|---|
Rolling window function | Dikonfigurasi secara optimal berdasarkan setelan metrik dan agregasi yang dipilih. Untuk menentukan fungsi perataan, lakukan langkah berikut:
|
Rolling window | Interval Min (untuk mengakses, klik add Tambahkan elemen kueri) |
Mengelompokkan deret waktu menurut (di bagian Di sepanjang deret waktu) |
Menu kedua elemen Agregasi |
Agregasi deret waktu (di bagian Di sepanjang deret waktu) |
Menu pertama elemen Agregasi |
Deret waktu untuk quota/rate/net_usage
Untuk melihat data deret waktu untuk metrik serviceruntime
quota/rate/net_usage
, untuk semua layanan dalam project Google Cloud Anda, tempat data dikelompokkan menurut nama metrik kuota dan tingkat penggunaan ditampilkan, gunakan setelan berikut:
Dialog Kondisi baru Kolom |
Nilai |
---|---|
Resource and Metric | Di menu Resources, pilih Consumer Quota. Di menu Kategori metrik, pilih Kuota. Di menu Metrics, pilih Rate quota usage. ( metric.type adalah serviceruntime.googleapis.com/quota/rate/net_usage ,dan resource.type adalah consumer_quota ).
|
Filter |
Tambahkan filter sehingga diagram hanya menampilkan data untuk layanan yang ingin Anda pantau. Misalnya, untuk memantau layanan Identity and Access Management, tambahkan filter berikut: service = iam.googleapis.com. Jika kolom filter kosong, semua data metrik yang tersedia akan disertakan dalam diagram. |
Rolling window | Pilih 1 m Periode 1 menit cocok dengan interval pengambilan sampel untuk metrik ini. |
Rolling window function | Pilih rate
Dengan menetapkan penyelaras ke nilai |
Di sepanjang deret waktu Agregasi deret waktu |
Pilih Kolom agregasi ditetapkan secara otomatis ke |
Di seluruh deret waktu Mengelompokkan deret waktu menurut |
Pilih Opsi ini mengelompokkan data berdasarkan jenis nama |
Deret waktu untuk quota/instances_per_vpc_network/limit
Untuk melihat data deret waktu untuk metrik compute.googleapis.com
quota/instances_per_vpc_network/limit
, untuk semua jaringan di project Google Cloud Anda, gunakan setelan berikut:
Dialog Kondisi baru Kolom |
Nilai |
---|---|
Resource and Metric | Di menu Resource type, pilih VPC Network. Di menu Metric category, pilih quota. Di menu Metric, pilih Instances per VPC Network quota limit. ( metric.type adalah compute.googleapis.com/quota/instances_per_vpc_network/limit ,dan resource.type adalah compute.googleapis.com/VpcNetwork ).
|
Filter | Biarkan kosong |
Rolling window | Pilih 1 m Kecocokan periode adalah interval pengambilan sampel untuk metrik ini. |
Rolling window function | Pilih mean |
Di sepanjang deret waktu Agregasi deret waktu |
Biarkan sebagai none
|
Di seluruh deret waktu Mengelompokkan deret waktu menurut |
Biarkan kosong |
Deret waktu untuk quota/instances_per_vpc_network/usage
Untuk melihat data deret waktu untuk metrik compute.googleapis.com
quota/instances_per_vpc_network/usage
, untuk salah satu jaringan di project Google Cloud Anda, gunakan setelan berikut:
Dialog Kondisi baru Kolom |
Nilai |
---|---|
Resource and Metric | Di menu Resource type, pilih VPC Network. Di menu Metric category, pilih quota. Di menu Metric, pilih Instances per VPC Network quota usage. ( metric.type adalah compute.googleapis.com/quota/instances_per_vpc_network/usage ,dan resource.type adalah compute.googleapis.com/VpcNetwork ).
|
Metrik | Di menu Metric, pilih compute.googleapis.com/quota/instances_per_vpc_network/usage . |
Filter |
Tambahkan filter sehingga diagram hanya menampilkan sebagian dari semua data. Misalnya, untuk melihat penggunaan jaringan tertentu, tambahkan filter berikut: network_id = identifier. Jika kolom filter kosong, semua data metrik yang tersedia akan disertakan dalam diagram. |
Rolling window | Pilih 1 m Kecocokan periode adalah interval pengambilan sampel untuk metrik ini. |
Rolling window function | Pilih mean |
Di sepanjang deret waktu Agregasi deret waktu |
Biarkan sebagai none
|
Di seluruh deret waktu Mengelompokkan deret waktu menurut |
Biarkan kosong |
Diagram MQL
Anda dapat menggunakan kueri MQL untuk membuat diagram menggunakan editor kode MQL. Misalnya, salah satu kueri yang ditampilkan dalam contoh kebijakan pemberitahuan MQL dapat dimasukkan ke editor kode. Anda dapat menghilangkan operasi terakhir, condition
, di setiap kueri; itu berlaku kecuali saat membuat kondisi untuk kebijakan pemberitahuan. Dalam diagram, operasi condition
tidak melakukan apa pun.
Untuk mengetahui informasi selengkapnya, lihat Menggunakan editor kode untuk MQL dan contoh MQL.