Dokumen ini memberikan contoh kebijakan pemberitahuan. Contoh ditulis dalam JSON, dan menggunakan filter Monitoring. Anda dapat membuat kebijakan dalam JSON atau YAML, terlepas dari apakah Anda menentukan kebijakan dengan menggunakan filter Pemantauan atau Monitoring Query Language (MQL). Google Cloud CLI dapat membaca dan menulis JSON dan YAML, sedangkan REST API dapat membaca JSON.
Untuk contoh kebijakan pemberitahuan yang menggunakan MQL, lihat dokumen berikut:
Untuk mengetahui informasi tentang cara mengonfigurasi kolom kebijakan pemberitahuan, lihat topik berikut:
- Membuat kebijakan pemberitahuan berbasis metrik menggunakan Google Cloud konsol
- Membuat kebijakan pemberitahuan berbasis metrik menggunakan API
Membuat YAML untuk kebijakan yang ada
Untuk membuat representasi YAML dari kebijakan pemberitahuan yang ada, gunakan perintah
gcloud alpha monitoring policies list
untuk mencantumkan kebijakan dan perintah gcloud alpha monitoring policies describe
untuk mencetak kebijakan.
Untuk membuat representasi YAML dari saluran notifikasi yang ada, gunakan perintah
gcloud alpha monitoring channels list
untuk mencantumkan saluran
dan perintah gcloud alpha monitoring channels describe
untuk mencetak konfigurasi saluran.
Jika Anda tidak menyertakan flag --format
dalam perintah Google Cloud CLI, maka,
format defaultnya adalah YAML untuk kedua perintah gcloud ... describe
.
Misalnya, perintah gcloud alpha monitoring policies describe
berikut
mengambil satu kebijakan bernama
projects/a-gcp-project/alertPolicies/12669073143329903307
dan pengalihan
(>
) menyalin output ke file test-policy.yaml
:
gcloud alpha monitoring policies describe projects/a-gcp-project/alertPolicies/12669073143329903307 > test-policy.yaml
Membuat JSON untuk kebijakan yang ada
Untuk membuat representasi JSON dari kebijakan pemberitahuan dan saluran notifikasi yang ada, lakukan salah satu hal berikut:
Tambahkan tanda
--format="json"
ke perintah CLIgcloud
yang dijelaskan dalam Membuat YAML untuk kebijakan yang ada. Misalnya, untuk mencantumkan kebijakan, jalankan perintah berikut:gcloud alpha monitoring policies list --format=json
Gunakan widget APIs Explorer di halaman referensi untuk setiap metode API:
Untuk kebijakan pemberitahuan, lihat metode
alertPolicies.list
danalertPolicies.get
.Untuk saluran notifikasi, lihat metode
notificationChannels.list
dannotificationChannels.get
.
Untuk mengetahui informasi selengkapnya, lihat APIs Explorer.
Contoh kebijakan
Seperti yang ditunjukkan dalam contoh pencadangan/pemulihan, Anda dapat menggunakan kebijakan yang disimpan untuk membuat salinan baru dari kebijakan tersebut.
Anda dapat menggunakan kebijakan yang disimpan dalam satu project untuk membuat kebijakan baru, atau serupa, dalam project lain. Namun, Anda harus melakukan perubahan berikut terlebih dahulu di salinan kebijakan yang disimpan:
- Hapus kolom berikut dari saluran notifikasi:
name
verificationStatus
- Buat saluran notifikasi sebelum merujuk ke saluran dalam kebijakan pemberitahuan (Anda memerlukan ID saluran baru).
- Hapus kolom berikut dari kebijakan pemberitahuan yang Anda buat ulang:
name
condition.name
creationRecord
mutationRecord
Kebijakan dalam dokumen ini disusun menggunakan terminologi yang sama dengan yang digunakan oleh pemantauan di konsol Google Cloud , misalnya, “kebijakan laju perubahan”, dan ada dua jenis kondisi:
- Kondisi batas; hampir semua jenis kebijakan yang disebutkan di UI adalah varian dari kondisi batas
- Kondisi tidak hadir
Dalam contoh berikut, kondisi ini sesuai dengan conditionThreshold
dan conditionAbsent
. Untuk informasi selengkapnya, lihat halaman referensi untuk
Condition
.
Anda dapat membuat banyak kebijakan ini secara manual, menggunakan konsol Google Cloud , tetapi beberapa kebijakan hanya dapat dibuat menggunakan Monitoring API. Untuk informasi selengkapnya, lihat Membuat kebijakan pemberitahuan (UI) atau Membuat kebijakan pemberitahuan menggunakan API.
Kebijakan batas metrik
Kebijakan batas metrik mendeteksi saat beberapa nilai melampaui batas yang telah ditentukan. Kebijakan nilai minimum memberi tahu Anda bahwa sesuatu mendekati titik penting, sehingga Anda dapat mengambil tindakan. Misalnya, kondisi untuk kebijakan batas metrik terpenuhi saat ruang disk yang tersedia menjadi kurang dari 10 persen dari total ruang disk.
Kebijakan pemberitahuan berikut menggunakan penggunaan CPU rata-rata sebagai indikator kondisi grup VM. Kondisi kebijakan terpenuhi saat pemakaian CPU rata-rata VM dalam project, yang diukur selama interval 60 detik, melebihi nilai minimum pemakaian 90 persen selama 15 menit (900 detik):
{
"displayName": "Very high CPU usage",
"combiner": "OR",
"conditions": [
{
"displayName": "CPU usage is extremely high",
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_MEAN",
"groupByFields": [
"project"
],
"perSeriesAligner": "ALIGN_MAX"
}
],
"comparison": "COMPARISON_GT",
"duration": "900s",
"filter": "metric.type=\"compute.googleapis.com/instance/cpu/utilization\"
AND resource.type=\"gce_instance\"",
"thresholdValue": 0.9,
"trigger": {
"count": 1
}
}
}
],
}
Kebijakan tidak adanya metrik
Kondisi tidak adanya metrik
terpenuhi jika tidak ada data yang ditulis ke metrik dalam rentang waktu yang ditentukan
oleh kolom duration
.
Salah satu cara untuk menunjukkannya adalah dengan membuat metrik kustom.
Berikut adalah contoh deskriptor untuk metrik kustom. Anda dapat membuat metrik menggunakan APIs Explorer.
{
"description": "Number of times the pipeline has run",
"displayName": "Pipeline runs",
"metricKind": "GAUGE",
"type": "custom.googleapis.com/pipeline_runs",
"labels": [
{
"description": "The name of the pipeline",
"key": "pipeline_name",
"valueType": "STRING"
},
],
"unit": "1",
"valueType": "INT64"
}
Lihat Ringkasan metrik yang ditentukan pengguna untuk mengetahui informasi selengkapnya.
Kondisi dalam kebijakan pemberitahuan berikut
terpenuhi saat data berhenti ditulis ke
metrik selama sekitar satu jam: dengan kata lain, pipeline per jam Anda gagal berjalan. Perhatikan bahwa kondisi yang digunakan di sini adalah
conditionAbsent
.
{
"displayName": "Data ingestion functioning",
"combiner": "OR",
"conditions": [
{
"displayName": "Hourly pipeline is up",
"conditionAbsent": {
"duration": "3900s",
"filter": "resource.type=\"global\"
AND metric.type=\"custom.googleapis.com/pipeline_runs\"
AND metric.label.pipeline_name=\"hourly\"",
}
}
],
}
Kebijakan perkiraan
Kondisi perkiraan terpenuhi jika hal berikut terjadi:
- Semua perkiraan untuk deret waktu sama dalam rentang waktu
yang ditentukan oleh kolom
duration
. - Cloud Monitoring memperkirakan bahwa deret waktu akan melanggar nilai minimum dalam cakupan perkiraan.
Kondisi perkiraan adalah kondisi nilai minimum metrik yang dikonfigurasi
untuk menggunakan perkiraan. Seperti yang diilustrasikan dalam contoh berikut, kondisi ini
mencakup kolom forecastOptions
yang memungkinkan perkiraan dan menentukan
cakrawala perkiraan. Dalam contoh berikut, horizon perkiraan ditetapkan ke
satu jam, yang merupakan nilai minimum:
{
"displayName": "NFS free bytes alert",
"combiner": "OR",
"conditions": [
{
"displayName": "Filestore Instance - Free disk space percent",
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "300s",
"perSeriesAligner": "ALIGN_MEAN"
}
],
"comparison": "COMPARISON_LT",
"duration": "900s",
"filter": "resource.type = \"filestore_instance\" AND metric.type = \"file.googleapis.com/nfs/server/free_bytes_percent\"",
"forecastOptions": {
"forecastHorizon": "3600s"
},
"thresholdValue": 20,
"trigger": {
"count": 1
}
}
}
],
}
Kebijakan laju perubahan
Kondisi laju perubahan terpenuhi jika nilai dalam deret waktu meningkat, atau menurun, setidaknya sebesar persentase yang ditentukan oleh nilai minimum. Saat Anda membuat jenis kondisi ini, komputasi persentase perubahan diterapkan ke deret waktu sebelum dibandingkan dengan nilai minimum.
Kondisi ini menghitung rata-rata nilai metrik dari 10 menit terakhir, lalu membandingkan hasilnya dengan rata-rata 10 menit yang diukur tepat sebelum periode perataan dimulai. Anda tidak dapat mengubah periode 10 menit yang digunakan untuk perbandingan dalam kebijakan pemberitahuan laju perubahan. Namun, Anda menentukan periode penyelarasan saat membuat kondisi.
Kebijakan pemberitahuan ini memantau apakah penggunaan CPU meningkat dengan cepat:
{
"displayName": "High CPU rate of change",
"combiner": "OR",
"conditions": [
{
"displayName": "CPU usage is increasing at a high rate",
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "900s",
"perSeriesAligner": "ALIGN_PERCENT_CHANGE",
}],
"comparison": "COMPARISON_GT",
"duration": "180s",
"filter": "metric.type=\"compute.googleapis.com/instance/cpu/utilization\" AND resource.type=\"gce_instance\"",
"thresholdValue": 0.5,
"trigger": {
"count": 1
}
}
}
],
}
Kebijakan gabungan grup
Kebijakan pemberitahuan ini memantau apakah penggunaan CPU rata-rata di seluruh cluster Google Kubernetes Engine melebihi nilai minimum:
{
"displayName": "CPU utilization across GKE cluster exceeds 10 percent",
"combiner": "OR",
"conditions": [
{
"displayName": "Group Aggregate Threshold across All Instances in Group GKE cluster",
"conditionThreshold": {
"filter": "group.id=\"3691870619975147604\" AND metric.type=\"compute.googleapis.com/instance/cpu/utilization\" AND resource.type=\"gce_instance\"",
"comparison": "COMPARISON_GT",
"thresholdValue": 0.1,
"duration": "300s",
"trigger": {
"count": 1
},
"aggregations": [
{
"alignmentPeriod": "60s",
"perSeriesAligner": "ALIGN_MEAN",
"crossSeriesReducer": "REDUCE_MEAN",
"groupByFields": [
"project"
]
},
{
"alignmentPeriod": "60s",
"perSeriesAligner": "ALIGN_SUM",
"crossSeriesReducer": "REDUCE_MEAN"
}
]
},
}
],
}
Kebijakan ini mengasumsikan keberadaan grup berikut:
{
"name": "projects/a-gcp-project/groups/3691870619975147604",
"displayName": "GKE cluster",
"filter": "resource.metadata.name=starts_with(\"gke-kuber-cluster-default-pool-6fe301a0-\")"
}
Untuk mengidentifikasi kolom yang setara untuk grup Anda, cantumkan detail grup Anda menggunakan APIs Explorer di halaman referensi project.groups.list.
Kebijakan cek uptime
Status cek uptime muncul di halaman Cek uptime, tetapi Anda dapat mengonfigurasi kebijakan pemberitahuan sehingga Cloud Monitoring akan mengirimkan notifikasi jika cek uptime gagal.
Misalnya, JSON berikut menjelaskan pemeriksaan uptime HTTPS di situs Google Cloud . Kebijakan pemberitahuan memeriksa ketersediaan setiap 5 menit.
Cek uptime dibuat dengan konsol Google Cloud . Representasi JSON di sini dibuat dengan mencantumkan cek uptime dalam project menggunakan Monitoring API; lihat uptimeCheckConfigs.list
.
Anda juga dapat membuat cek uptime dengan Monitoring API.
{
"name": "projects/a-gcp-project/uptimeCheckConfigs/uptime-check-for-google-cloud-site",
"displayName": "Uptime check for Google Cloud site",
"monitoredResource": {
"type": "uptime_url",
"labels": {
"host": "cloud.google.com"
}
},
"httpCheck": {
"path": "/index.html",
"useSsl": true,
"port": 443,
"authInfo": {}
},
"period": "300s",
"timeout": "10s",
"contentMatchers": [
{}
]
}
Untuk membuat kebijakan pemberitahuan untuk cek uptime, lihat cek uptime berdasarkan UPTIME_CHECK_ID
-nya. ID ini ditetapkan saat pemeriksaan dibuat; ID ini muncul
sebagai komponen terakhir kolom name
dan terlihat di UI sebagai
Check ID
dalam ringkasan konfigurasi. Jika Anda
menggunakan Monitoring API, metode
uptimeCheckConfigs.create
akan menampilkan ID.
ID berasal dari displayName
, yang dalam hal ini ditetapkan di UI.
Hal ini dapat diverifikasi dengan mencantumkan cek uptime dan melihat nilai name
.
ID untuk pemeriksaan uptime yang dijelaskan sebelumnya adalah
uptime-check-for-google-cloud-site
.
Kondisi kebijakan pemberitahuan berikut terpenuhi jika pemeriksaan waktu aktif gagal atau jika sertifikat SSL di situs Google Cloud akan berakhir dalam waktu kurang dari 15 hari. Jika salah satu kondisi terpenuhi, Monitoring akan mengirimkan notifikasi ke saluran notifikasi yang ditentukan:
{
"displayName": "Google Cloud site uptime failure",
"combiner": "OR",
"conditions": [
{
"displayName": "Failure of uptime check_id uptime-check-for-google-cloud-site",
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "1200s",
"perSeriesAligner": "ALIGN_NEXT_OLDER",
"crossSeriesReducer": "REDUCE_COUNT_FALSE",
"groupByFields": [ "resource.label.*" ]
}
],
"comparison": "COMPARISON_GT",
"duration": "600s",
"filter": "metric.type=\"monitoring.googleapis.com/uptime_check/check_passed\"
AND metric.label.check_id=\"uptime-check-for-google-cloud-site\"
AND resource.type=\"uptime_url\"",
"thresholdValue": 1,
"trigger": {
"count": 1
}
}
},
{
"displayName": "SSL Certificate for google-cloud-site expiring soon",
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "1200s",
"perSeriesAligner": "ALIGN_NEXT_OLDER",
"crossSeriesReducer": "REDUCE_MEAN",
"groupByFields": [ "resource.label.*" ]
}
],
"comparison": "COMPARISON_LT",
"duration": "600s",
"filter": "metric.type=\"monitoring.googleapis.com/uptime_check/time_until_ssl_cert_expires\"
AND metric.label.check_id=\"uptime-check-for-google-cloud-site\"
AND resource.type=\"uptime_url\"",
"thresholdValue": 15,
"trigger": {
"count": 1
}
}
}
],
}
Filter dalam kondisi menentukan metrik yang dipantau
berdasarkan jenis dan labelnya. Jenis metriknya adalah
monitoring.googleapis.com/uptime_check/check_passed
dan
monitoring.googleapis.com/uptime_check/time_until_ssl_cert_expires
.
Label metrik mengidentifikasi pemeriksaan uptime tertentu yang sedang dipantau.
Dalam contoh ini, kolom label check_id
berisi ID pemeriksaan uptime.
AND metric.label.check_id=\"uptime-check-for-google-cloud-site\"
Lihat Memantau filter untuk mengetahui informasi selengkapnya.
Kebijakan kondisi proses
Kebijakan kesehatan proses dapat memberi tahu Anda jika jumlah proses yang cocok dengan pola melampaui batas. Hal ini dapat digunakan untuk memberi tahu Anda, misalnya, bahwa suatu proses telah berhenti berjalan.
Kebijakan pemberitahuan ini menyebabkan Monitoring mengirimkan notifikasi ke
saluran notifikasi yang ditentukan
jika tidak ada proses yang cocok dengan string nginx
, yang berjalan sebagai pengguna www
, yang
tersedia selama lebih dari 5 menit:
{
"displayName": "Server health",
"combiner": "OR",
"conditions": [
{
"displayName": "Process 'nginx' is not running",
"conditionThreshold": {
"filter": "select_process_count(\"has_substring(\\\"nginx\\\")\", \"www\") AND resource.type=\"gce_instance\"",
"comparison": "COMPARISON_LT",
"thresholdValue": 1,
"duration": "300s"
}
}
],
}
Untuk mengetahui informasi selengkapnya, lihat Kesehatan proses.
Rasio metrik
Sebaiknya gunakan Bahasa Kueri Monitoring (MQL) untuk membuat kebijakan pemberitahuan berbasis rasio. Meskipun Cloud Monitoring API mendukung pembuatan rasio berbasis filter tertentu, MQL memberikan solusi yang lebih fleksibel dan andal:
- Untuk contoh kebijakan rasio berbasis MQL, lihat Contoh kebijakan pemberitahuan MQL.
- Untuk mengetahui informasi tentang cara membuat kebijakan pemberitahuan dengan MQL, lihat Kebijakan pemberitahuan dengan MQL.
- Untuk informasi tentang membuat diagram atau memantau rasio metrik, lihat Rasio metrik.
Bagian ini menjelaskan rasio berbasis filter.
Dengan API, Anda dapat membuat dan melihat kebijakan yang menghitung rasio
dua metrik terkait dan diaktifkan saat rasio tersebut melampaui nilai minimum. Metrik terkait harus memiliki MetricKind
yang sama. Misalnya,
Anda dapat membuat kebijakan pemberitahuan berbasis rasio jika kedua metrik adalah metrik pengukur.
Untuk menentukan MetricKind
jenis metrik, lihat
Daftar metrik.
Kondisi rasio adalah varian pada kondisi nilai minimum metrik, dengan
kondisi dalam kebijakan rasio menggunakan dua filter: filter
biasa,
yang berfungsi sebagai pembilang rasio, dan denominatorFilter
,
yang berfungsi sebagai penyebut rasio.
Deret waktu dari kedua filter harus diagregasi dengan cara yang sama, sehingga
penghitungan rasio nilai menjadi bermakna.
Kondisi kebijakan pemberitahuan terpenuhi saat rasio filter melanggar nilai minimum untuk rentang waktu yang ditentukan oleh kolom duration
.
Bagian berikutnya menjelaskan cara mengonfigurasi kebijakan pemberitahuan yang memantau rasio respons error HTTP terhadap semua respons HTTP.
Rasio error HTTP
Kebijakan pemberitahuan berikut memiliki kondisi nilai minimum yang dibuat berdasarkan rasio jumlah respons error HTTP terhadap jumlah semua respons HTTP.
{
"displayName": "HTTP error count exceeds 50 percent for App Engine apps",
"combiner": "OR",
"conditions": [
{
"displayName": "Ratio: HTTP 500s error-response counts / All HTTP response counts",
"conditionThreshold": {
"filter": "metric.label.response_code>=\"500\" AND
metric.label.response_code<\"600\" AND
metric.type=\"appengine.googleapis.com/http/server/response_count\" AND
project=\"a-gcp-project\" AND
resource.type=\"gae_app\"",
"aggregations": [
{
"alignmentPeriod": "300s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"project",
"resource.label.module_id",
"resource.label.version_id"
],
"perSeriesAligner": "ALIGN_DELTA"
}
],
"denominatorFilter": "metric.type=\"appengine.googleapis.com/http/server/response_count\" AND
project=\"a-gcp-project\" AND
resource.type=\"gae_app\"",
"denominatorAggregations": [
{
"alignmentPeriod": "300s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"project",
"resource.label.module_id",
"resource.label.version_id"
],
"perSeriesAligner": "ALIGN_DELTA",
}
],
"comparison": "COMPARISON_GT",
"thresholdValue": 0.5,
"duration": "0s",
"trigger": {
"count": 1
}
}
}
]
}
Jenis metrik dan resource
Jenis metrik untuk kebijakan ini adalah
appengine.googleapis.com/http/server/response_count
, yang memiliki dua label:
response_code
, bilangan bulat 64-bit yang merepresentasikan kode status HTTP untuk permintaan. Kebijakan ini memfilter data deret waktu pada label ini, sehingga dapat menentukan hal berikut:- Jumlah respons yang diterima.
- Jumlah respons error yang diterima.
- Rasio respons error terhadap semua respons.
loading
, nilai boolean yang menunjukkan apakah permintaan sedang dimuat. Labelloading
tidak relevan dalam kebijakan pemberitahuan ini.
Kebijakan pemberitahuan mengevaluasi data respons dari aplikasi App Engine, yaitu data yang berasal dari jenis resource yang dipantau gae_app
. Resource yang dipantau ini memiliki tiga label:
project_id
, ID untuk project Google Cloud .module_id
, nama layanan atau modul di aplikasi.version_id
, versi aplikasi.
Untuk informasi referensi tentang jenis metrik dan resource yang dimonitor ini, lihat
Metrik App Engine dalam daftar metrik dan entri
gae_app
dalam daftar resource yang dimonitor.
Fungsi kebijakan ini
Kondisi ini menghitung rasio respons error terhadap total respons. Kondisi terpenuhi jika rasio lebih besar dari 50% (yaitu, rasio lebih besar dari 0,5) selama periode penyelarasan 5 menit.
Kebijakan ini mencatat modul dan versi aplikasi yang melanggar kondisi dengan mengelompokkan deret waktu di setiap filter menurut nilai label tersebut.
- Filter dalam kondisi melihat respons HTTP dari aplikasi App Engine dan memilih respons tersebut dalam rentang error, 5xx. Ini adalah pembilang dalam rasio.
- Filter penyebut dalam kondisi melihat semua respons HTTP dari aplikasi App Engine.
Kondisi terpenuhi dan Monitoring segera mengirimkan notifikasi untuk insiden baru; rentang waktu yang diizinkan untuk kolom duration
dalam kondisi adalah nol detik. Kondisi ini menggunakan jumlah trigger
sebanyak satu,
yaitu jumlah deret waktu yang harus melanggar kondisi untuk menyebabkan
insiden. Untuk aplikasi App Engine dengan satu layanan, jumlah trigger
satu sudah cukup. Jika Anda memiliki aplikasi dengan 20 layanan dan Anda ingin menyebabkan insiden jika 3 atau lebih layanan melanggar kondisi, gunakan jumlah trigger
3.
Menyiapkan rasio
Filter pembilang dan penyebut persis sama, kecuali bahwa filter kondisi di pembilang cocok dengan kode respons dalam rentang error, dan filter kondisi di penyebut cocok dengan semua kode respons. Klausul berikut hanya muncul dalam kondisi pembilang:
metric.label.response_code>=\"500\" AND
metric.label.response_code<\"600\"
Jika tidak, filter numerator dan denominator sama.
Deret waktu yang dipilih oleh setiap filter harus diagregasi dengan cara yang sama agar penghitungan rasio valid. Setiap filter dapat mengumpulkan beberapa deret waktu, karena akan ada deret waktu yang berbeda untuk setiap kombinasi nilai label. Kebijakan ini mengelompokkan kumpulan deret waktu berdasarkan label resource yang ditentukan, yang memartisi kumpulan deret waktu menjadi kumpulan grup. Beberapa deret waktu di setiap grup cocok dengan filter pembilang; selebihnya cocok dengan filter penyebut.
Untuk menghitung rasio, kumpulan deret waktu yang cocok dengan setiap filter harus digabungkan menjadi satu deret waktu. Dengan demikian, setiap grup akan memiliki dua deret waktu, satu untuk pembilang dan satu untuk penyebut. Selanjutnya, rasio titik dalam deret waktu pembilang dan penyebut di setiap grup dapat dihitung.
Dalam kebijakan ini, deret waktu untuk kedua filter digabungkan sebagai berikut:
Setiap filter membuat sejumlah deret waktu yang diselaraskan pada interval 5 menit, dengan nilai yang diwakili oleh
ALIGN_DELTA
yang dihitung pada nilai dalam periode penyelarasan 5 menit tersebut. Penyelarasan ini menampilkan jumlah respons yang cocok dalam periode penyelarasan tersebut sebagai bilangan bulat 64-bit.Deret waktu dalam setiap filter juga dikelompokkan berdasarkan nilai label resource untuk modul dan versi, sehingga setiap grup akan berisi dua set deret waktu yang selaras, yaitu yang cocok dengan filter pembilang dan yang cocok dengan filter penyebut.
Deret waktu dalam setiap grup yang cocok dengan filter pembilang atau penyebut digabungkan menjadi satu waktu dengan menjumlahkan nilai dalam deret waktu individual menggunakan peredam lintas deret
REDUCER_SUM
. Hal ini menghasilkan satu deret waktu untuk pembilang dan satu untuk penyebut, yang masing-masing melaporkan jumlah respons di semua deret waktu yang cocok dalam periode penyelarasan.
Kemudian, kebijakan menghitung rasio nilai untuk deret waktu pembilang dan penyebut yang merepresentasikan setiap grup. Kondisi untuk kebijakan pemberitahuan terpenuhi jika rasio lebih besar dari 50 persen.