Dokumen ini menjelaskan cara membuat kebijakan pemberitahuan dan diagram untuk memantau kuota yang dialokasikan kepada Anda oleh Google Cloud, dan menyertakan beberapa contoh. Google Cloud menetapkan berbagai kuota yang dapat Anda gunakan untuk melacak dan membatasi resource yang digunakan oleh project atau organisasi. Untuk informasi umum tentang kuota, termasuk informasi tentang kuota alokasi dan kuota kapasitas, lihat Mengelola kuota.
Sebelum memulai
Dokumen ini mengasumsikan bahwa Anda sudah memahami data deret waktu dan manipulasinya. Referensi berikut memberikan informasi tambahan:
- Untuk informasi tentang cara menggunakan data deret waktu, lihat Pemfilteran dan agregasi.
- Untuk mengetahui 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 subset dari 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 grup tiga 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 penggunaan kuota, terutama untuk kuota konsumen, dapat mencakup informasi tentang berbagai kuota. Untuk mengekstrak informasi tentang kuota tertentu untuk diagram atau kebijakan pemberitahuan, Anda perlu mengidentifikasi subset 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 mengidentifikasi batas pada jenis kuota tertentu.
Kuota dapat memiliki lebih dari satu batas yang terkait dengannya. Misalnya, kuota untuk panggilan baca mungkin memiliki batas per menit sebesar 100 dan batas per hari sebesar 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 menyertakan 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 konsol Google Cloud, buka halaman Kuota & Batas Sistem:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah IAM & Admin.
Klik view_column Lihat kolom 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 dimonitor: Jika diisi, kuota akan menggunakan resource yang dimonitor
yang tercantum. Jika kosong, resource yang dimonitor untuk kuota adalah
consumer_quota
.
- Metrik: Kolom ini menampilkan nilai label
Temukan kuota yang diminati.
Misalnya, kuota subjaringan Compute Engine API mencantumkan Metrik sebagai
compute.googleapis.com/subnetworks
, Nama batas sebagaiSUBNETWORKS-per-project
, dan tidak mencantumkan Resource yang dimonitor. Oleh karena itu, resource yang dimonitor 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, berdasarkan 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 1M.
Luaskan menu Diagram garis, lalu pilih Diagram batang bertumpuk.
Konfigurasikan Metrics Explorer untuk menampilkan penggunaan kuota alokasi:
- Klik Select a metric dan masukkan
allocation
di filter_list Filter bar. - Pilih Consumer Quota untuk resource.
- Pilih Quota untuk kategori metrik.
- Pilih Penggunaan kuota alokasi untuk metrik, lalu klik Terapkan.
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 dan 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 menampilkan penggunaan kuota hanya untuk kuota yang telah mencatat penggunaan. Misalnya, jika project tidak memiliki resource Compute Engine, pemfilteran untuk 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 wilayah, tanpa zona, tambahkan filter berdasarkan label
location
. Untuk contoh ini, dengan kedua region diawali denganus-
dan diakhiri dengan1
, filter yang menggunakan ekspresi regulerlocation =~ ^us.*1$
berfungsi dengan baik:
Untuk kuota konsumen, nilai label quota_metric
mengidentifikasi layanan dan penggunaan kuota tertentu yang sedang 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 untuk mengonfigurasi Monitoring guna memberi tahu Anda saat terjadi sesuatu, seperti mencapai 85% batas kuota.
Kebijakan pemberitahuan adalah kumpulan kondisi dan informasi notifikasi:
- Kondisi menjelaskan apa yang sedang dimonitor, cara menggabungkan data deret waktu untuk resource tersebut, dan kapan insiden dihasilkan. Kebijakan pemberitahuan harus menentukan minimal satu kondisi.
- Saluran notifikasi menentukan siapa yang akan diberi tahu, dan bagaimana mereka akan diberi tahu, saat insiden terjadi. Misalnya, Anda dapat mengonfigurasi kebijakan pemberitahuan untuk mengirim email kepada orang tertentu atau sekelompok orang.
Ada dua teknik yang dapat Anda gunakan untuk membuat kondisi kebijakan pemberitahuan:
Menggunakan filter Pemantauan untuk memilih dan memanipulasi data. Misalnya, saat menggunakan antarmuka grafis untuk membuat kondisi kebijakan pemberitahuan, Anda membuat filter. Contoh yang ditampilkan di Menggunakan 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 tersebut.
Contoh kebijakan pemberitahuan filter
Di bagian ini, setiap subbagian menyertakan representasi JSON kebijakan pemberitahuan, beserta sepasang tabel yang menjelaskan cara mengonfigurasi kebijakan di konsol Google Cloud:
- Tabel pertama menjelaskan apa yang sedang dipantau dan cara data digabungkan.
- Tabel kedua menjelaskan kapan insiden akan dibuat.
Contoh ini adalah untuk pendekatan berbasis filter.
Tidak ada kebijakan yang menghitung rasio. Untuk contoh berbasis rasio, lihat Contoh kebijakan pemberitahuan MQL.
Memberi tahu tentang error quota/exceeded
Anda dapat membuat kebijakan pemberitahuan untuk memberi tahu Anda jika ada layanan di project Google Cloud yang melaporkan error kuota terlampaui. Anda dapat membuat jenis kebijakan ini menggunakan Konsol Google Cloud atau menggunakan Cloud Monitoring API.
Menggunakan konsol Google Cloud
Konten lainnya dalam subbagian ini ditujukan untuk dialog kondisi kebijakan pemberitahuan.
Selesaikan dialog New condition menggunakan setelan dalam
tabel berikut.
Setelan ini menentukan bahwa Anda ingin memantau data deret waktu untuk metrik serviceruntime
/quota/exceeded
untuk semua layanan di project Google Cloud, dan bahwa Anda ingin mengelompokkan data berdasarkan batas kuota.
Kolom dialog New condition |
Nilai |
---|---|
Resource and Metric | Di menu Resources, pilih Consumer Quota. Di menu Metric categories, pilih Quota. Di menu Metrics, pilih Quota exceeded error. ( metric.type adalah serviceruntime.googleapis.com/quota/exceeded ,dan resource.type adalah consumer_quota ).
|
Filter |
Tambahkan filter agar 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 periode bergulir |
Di seluruh deret waktu Agregasi deret waktu |
Pilih Kolom agregasi otomatis ditetapkan 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 jumlah error kuota terlampaui melebihi nilai 0 selama 1 m. Nilai 0 dipilih di sini karena error kuota terlampaui tidak terduga dan merupakan indikasi bahwa kuota perlu ditingkatkan atau layanan perlu diubah untuk mengurangi permintaan API. Sebaiknya gunakan nilai minimum yang lebih tinggi.
Kolom dialog Configure trigger |
Nilai |
---|---|
Condition type | Threshold |
Alert trigger | Any time series violates |
Threshold position | Above threshold |
Threshold value | 0 |
Retest window | 1 m |
Menggunakan Cloud Monitoring API
Anda dapat membuat kebijakan pemberitahuan ini menggunakan metode API
alertPolicies.create
. Anda dapat memanggil Cloud Monitoring API secara langsung, menggunakan Google Cloud CLI, atau menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat
Membuat kebijakan.
Untuk 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 tentang quota/allocation/usage
absolut
Anda dapat membuat kebijakan pemberitahuan untuk memberi tahu Anda jika penggunaan kuota alokasi untuk layanan tertentu di project Google Cloud Anda melebihi nilai minimum yang ditentukan pengguna. Anda dapat membuat jenis kebijakan ini menggunakan Konsol Google Cloud atau menggunakan Cloud Monitoring API.
Menggunakan konsol Google Cloud
Konten lainnya dalam subbagian ini ditujukan untuk dialog kondisi kebijakan pemberitahuan.
Selesaikan 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 bahwa Anda ingin mengelompokkan data berdasarkan batas kuota.
Kolom dialog New condition |
Nilai |
---|---|
Resource and Metric | Di menu Resources, pilih Consumer Quota. Di menu Metric categories, pilih Quota. 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 agar 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 Periode yang cocok adalah interval sampling untuk metrik ini. |
Rolling window function | Pilih next older Fungsi periode bergulir ditetapkan ke |
Di seluruh deret waktu Agregasi deret waktu |
Pilih Kolom agregasi otomatis ditetapkan 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 selama 1.440 m. Nilai 1440 m cocok dengan periode bergulir. Nilai 2,5 dipilih untuk contoh ini, karena nilainya sedikit lebih tinggi dari nilai normal untuk sistem pengujian. Anda harus memilih nilai minimum berdasarkan layanan yang dipantau bersama dengan pemahaman tentang rentang nilai yang diharapkan untuk metrik.
Kolom dialog Configure trigger |
Nilai |
---|---|
Condition type | Threshold |
Alert trigger | Any time series violates |
Threshold position | Above threshold |
Threshold value | 2.5 |
Retest window | 1440 m |
Menggunakan Cloud Monitoring API
Anda dapat membuat kebijakan pemberitahuan ini menggunakan metode API
alertPolicies.create
. Anda dapat memanggil Cloud Monitoring API secara langsung, menggunakan Google Cloud CLI, atau menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat
Membuat kebijakan.
Untuk 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 canggih dan fleksibel daripada yang dapat Anda buat 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 penghitungan rasio metrik pengukur (batas) dan metrik delta (kapasitas).
Anda dapat membuat kebijakan pemberitahuan berbasis MQL menggunakan Konsol Google Cloud atau Monitoring API:
Konsol Google Cloud: Gunakan editor kode MQL saat Anda membuat kondisi pemberitahuan. Untuk membuka editor kode, di toolbar dialog Create alerting policy, klik code Query Editor. Untuk informasi selengkapnya tentang cara menggunakan editor ini, lihat Menggunakan editor kode untuk MQL.
Monitoring API: Gunakan metode
alertPolicies.create
dan berikan kondisi jenisMonitoringQueryLanguageCondition
. Jenis kondisi ini menggunakan kueri MQL sebagai nilai kolom. Untuk informasi selengkapnya tentang cara menggunakan Monitoring API dengan MQL, lihat Membuat kondisi untuk kebijakan pemberitahuan MQL.
Untuk informasi khusus MQL, lihat Menggunakan Monitoring Query Language. Untuk mengetahui informasi selengkapnya tentang kebijakan pemberitahuan berbasis MQL, lihat 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 tarif per menit dari 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
dalam 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 memperingatkan Anda jika ada yang melebihi nilai minimum.
Pola kueri MQL berikut menjelaskan kebijakan pemberitahuan yang mengirim notifikasi saat penggunaan tarif per menit atau per hari dari 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(23h)
| 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(23h), max(val()) }
| ratio }
| union
| every 1m
| condition gt(val(), 0.8 '1')
Dalam kueri sebelumnya, argumen untuk penyelaras 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
pengatur next_older
, yang tidak mengisi periode 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
dalam 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
23h
dalam 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.
Pemberitahuan rasio penggunaan kuota alokasi untuk satu batas
Pola kueri MQL berikut menjelaskan pemberitahuan yang memantau saat penggunaan alokasi per hari dari 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 75% di region mana pun
Kueri berikut membuat kebijakan pemberitahuan yang terpicu saat penggunaan CPU instance VM Compute Engine lebih tinggi dari 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 dan memperingatkan Anda jika ada yang melebihi batas.
Kueri MQL berikut menjelaskan pemberitahuan yang memantau saat penggunaan alokasi per hari dari layanan resource apa pun melebihi 80% untuk salah satu 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 berdasarkan 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 lebih tinggi dari 50% batas di salah satu zona us-central1
. 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.
Notifikasi rasio menggunakan kuota khusus resource
Anda dapat menggunakan MQL untuk menyiapkan rasio untuk metrik terkait kuota khusus resource. Dalam hal ini, Anda menentukan resource khusus layanan yang dipantau dan menghitung rasio dari 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 yang dipantau terkait. - Ganti
samplemetric
dengan string untuk grup jenis metrik. - Dalam operasi
group_by
, cantumkan setiap label resource dan metrik.
Contoh: Penggunaan CPU 75% di region mana pun
Misalnya, kueri MQL berikut menyiapkan pemberitahuan yang memantau saat 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 menggunakan
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 menggunakannya, atau menyimpannya ke dasbor. Dalam tampilan dasbor, Anda dapat menambahkan diagram ke dasbor.
Jika hanya ingin mengonfigurasi diagram yang menampilkan data kuota, Anda dapat menggunakan setelan di tabel Kondisi baru. Kondisi pemberitahuan menggunakan notasi yang berbeda dari alat pembuatan diagram. Alat pembuatan diagram mencakup Metrics Explorer dan mengonfigurasi diagram di dasbor kustom:Nama kolom dialog New condition |
Diagram |
---|---|
Rolling window function | Dikonfigurasi secara optimal berdasarkan setelan agregasi dan metrik yang dipilih. Untuk menentukan fungsi perataan, lakukan hal berikut:
|
Rolling window | Min Interval (untuk mengakses, klik add Tambahkan elemen kueri) |
Kelompokkan deret waktu menurut (di bagian Di seluruh deret waktu) |
Menu kedua elemen Aggregation |
Agregasi deret waktu (di bagian Di seluruh deret waktu) |
Menu pertama elemen Aggregation |
Deret waktu untuk quota/rate/net_usage
Untuk melihat data deret waktu untuk metrik serviceruntime
quota/rate/net_usage
, untuk semua layanan di project Google Cloud Anda, dengan data yang dikelompokkan berdasarkan nama metrik kuota dan rasio penggunaan ditampilkan, gunakan setelan berikut:
Kolom dialog New condition |
Nilai |
---|---|
Resource and Metric | Di menu Resources, pilih Consumer Quota. Di menu Metric categories, pilih Quota. 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 agar 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 sampling untuk metrik ini. |
Rolling window function | Pilih rate
Dengan menetapkan penyelaras ke nilai |
Di seluruh deret waktu Agregasi deret waktu |
Pilih Kolom agregasi otomatis ditetapkan 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:
Kolom dialog New condition |
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 Periode yang cocok adalah interval sampling untuk metrik ini. |
Rolling window function | Pilih mean |
Di seluruh 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:
Kolom dialog New condition |
Nilai |
---|---|
Resource and Metric | Di menu Resource type, pilih VPC Network. Di menu Metric category, pilih quota. Di menu Metrik, pilih Instance per penggunaan kuota Jaringan VPC. ( 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 agar 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 Periode yang cocok adalah interval sampling untuk metrik ini. |
Rolling window function | Pilih mean |
Di seluruh 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, setiap kueri yang ditampilkan dalam
contoh kebijakan pemberitahuan MQL dapat dimasukkan
ke editor kode. Anda dapat menghilangkan operasi terakhir, condition
,
di setiap kueri; hal ini berlaku kecuali saat membuat kondisi untuk
kebijakan pemberitahuan. Dalam diagram, operasi condition
tidak melakukan apa pun.
Untuk informasi selengkapnya, lihat Menggunakan editor kode untuk MQL dan contoh MQL.