Dokumen ini menjelaskan cara Anda dapat mengatur dan memprioritaskan pemberitahuan dengan memberi label yang ditentukan pengguna. Label ini dikonfigurasi pada kebijakan pemberitahuan dan tercantum dalam kebijakan pemberitahuan dan pemberitahuan. Bergantung pada konfigurasi Anda, label juga dicantumkan di notifikasi tertentu.
Tentang label
Label, yang merupakan pasangan nilai kunci, digunakan untuk melampirkan informasi ke deret waktu, kebijakan pemberitahuan, pemberitahuan, atau notifikasi. Misalnya, label pada deret waktu dapat mengidentifikasi instance virtual machine (VM) tertentu tempat data dikumpulkan. Label ditentukan pengguna atau telah ditentukan sebelumnya.
Label buatan pengguna
Label yang ditentukan pengguna berisi informasi yang Anda tentukan. Label ini dapat memiliki nilai statis atau dinamis:
Label statis yang ditentukan pengguna memiliki nilai yang tidak dapat diubah. Anda dapat membuat label yang ditentukan pengguna statis saat mengonfigurasi kebijakan pemberitahuan menggunakan konsol Google Cloud atau Cloud Monitoring API. Untuk informasi selengkapnya, baca dokumen berikut:
Label yang ditentukan pengguna dinamis memiliki nilai yang dapat berubah berdasarkan nilai data deret waktu. Anda dapat membuat label dinamis yang ditentukan pengguna saat mengonfigurasi kondisi kebijakan pemberitahuan dengan PromQL. Untuk melihat contoh, lihat Contoh: Menambahkan label yang ditentukan pengguna dengan nilai dinamis.
Kunci label harus diawali dengan huruf kecil. Kunci label dan nilai label hanya boleh berisi huruf kecil, angka, garis bawah, dan tanda pisah.
Label yang telah ditentukan sebelumnya
Label yang telah ditentukan disertakan dalam deskriptor resource; label ini harus diisi saat data deret waktu ditulis. Label ini menampilkan informasi tentang metrik yang dikumpulkan atau resource yang digunakan untuk menulis metrik. Misalnya, label pada deret waktu dapat mengidentifikasi virtual machine (VM), zona, Google Cloud project, dan jenis perangkat. Saat Monitoring membuat pemberitahuan berdasarkan deret waktu tersebut, pemberitahuan akan mewarisi label tersebut.
Label Pusat Aplikasi
Pusat Aplikasi melampirkan label ke data log, metrik, dan rekaman aktivitas yang dihasilkan oleh aplikasi serta layanan dan workload-nya. Label ini memungkinkan Google Cloud infrastruktur membuat dasbor aplikasi, layanan, dan workload yang menampilkan data metrik dan log. Untuk mengetahui informasi selengkapnya, lihat salah satu dokumen berikut:
- Google Cloud console: Mengaitkan kebijakan pemberitahuan dengan aplikasi Pusat Aplikasi.
- Cloud Monitoring API: Mengaitkan kebijakan pemberitahuan dengan aplikasi Pusat Aplikasi.
Cara melihat label
Anda dapat melihat label kebijakan pemberitahuan atau pemberitahuan di halaman detail pemberitahuan, halaman detail kebijakan pemberitahuan, dan di beberapa notifikasi.
- Kebijakan pemberitahuan: Label statis buatan pengguna tercantum di bagian Label Pengguna. Label dinamis buatan pengguna dan label standar tidak terlihat.
- Peringatan: Label yang ditentukan pengguna statis tercantum di bagian Label Kebijakan, dan label yang ditentukan pengguna dinamis tercantum di bagian Label Metrik. Label yang telah ditentukan sebelumnya tercantum di bagian Label Resource yang Dimonitor dan Label Metrik.
Notifikasi: Label standar dan label yang ditentukan pengguna tercantum dalam jenis notifikasi berikut:
- Google Chat
- PagerDuty
- Pub/Sub
- Webhook
Contoh: Menambahkan label buatan pengguna dengan nilai dinamis
Anda dapat menggunakan PromQL untuk mengonfigurasi label sehingga nilainya
berubah secara dinamis berdasarkan data deret waktu. Misalnya, Anda ingin
pemberitahuan memiliki label criticality yang nilainya berubah
bergantung pada nilai metrik pemakaian CPU yang dipantau:
label_replace(
avg_over_time({"compute.googleapis.com/instance/cpu/utilization", monitored_resource="gce_instance"}[5m]) >= 0.9,
"criticality", "CRITICAL", "", ""
)
or ignoring (criticality)
label_replace(
avg_over_time({"compute.googleapis.com/instance/cpu/utilization", monitored_resource="gce_instance"}[5m]) >= 0.8,
"criticality", "WARNING", "", ""
)
or ignoring (criticality)
label_replace(
avg_over_time({"compute.googleapis.com/instance/cpu/utilization", monitored_resource="gce_instance"}[5m]) >= 0.7,
"criticality", "INFO", "", ""
)
or ignoring (criticality)
label_replace(
avg_over_time({"compute.googleapis.com/instance/cpu/utilization", monitored_resource="gce_instance"}[5m]),
"criticality", "GOOD", "", ""
)
Gambar berikut menggambarkan cara kebijakan pemberitahuan yang menggunakan kueri PromQL memproses data deret waktu yang dipantaunya:
Handler kebijakan memproses data pemakaian CPU dan menghasilkan deret waktu yang menunjukkan kapan kondisi terpenuhi. Dalam contoh sebelumnya, kondisi terpenuhi jika pemakaian CPU minimal 70%. Untuk setiap deret waktu input, handler kebijakan dapat membuat salah satu dari empat deret waktu:
| Nama deret waktu output | Kondisi terpenuhi | Deskripsi |
|---|---|---|
| "GOOD" | Tidak | Deret waktu ini memiliki label yang sama dengan deret waktu input. Tidak memiliki label tingkat keparahan. |
| "KRITIS" | Ya | Penggunaan CPU minimal 90%. Deret waktu output memiliki label yang sama dengan deret waktu "BAIK" ditambah label tingkat keparahan dengan nilai "KRITIS". |
| "PERINGATAN" | Ya | Penggunaan CPU minimal 80%, tetapi kurang dari 90%. Deret waktu output memiliki label yang sama dengan deret waktu "BAIK" ditambah label tingkat keparahan dengan nilai "PERINGATAN". |
| "INFO" | Ya | Penggunaan CPU minimal 70%, tetapi kurang dari 80%. Deret waktu output memiliki label yang sama dengan deret waktu "BAIK" ditambah label tingkat keparahan dengan nilai "INFO". |
Data deret waktu yang dihasilkan oleh handler kebijakan adalah input ke
pengelola pemberitahuan, yang menentukan kapan pemberitahuan dibuat dan
ditutup. Untuk menentukan kapan harus menutup notifikasi, pengelola notifikasi
menggunakan nilai kolom duration, evaluationMissingData,
dan autoClose.
Praktik terbaik
Untuk memverifikasi bahwa paling banyak satu pemberitahuan terbuka dalam satu waktu saat Anda membuat label yang nilainya ditetapkan secara dinamis, lakukan hal berikut:
Di objek
MetricThreshold, ganti nilai default untuk kolom berikut:- Kolom
duration: Tetapkan ke nilai bukan nol. - Kolom
evaluationMissingData: Setel agar pemberitahuan ditutup saat data berhenti masuk. Saat Anda menggunakan Cloud Monitoring API, tetapkan kolom ini keEVALUATION_MISSING_DATA_INACTIVE. Saat Anda menggunakan konsol Google Cloud , tetapkan kolom ke "Titik data yang hilang diperlakukan sebagai nilai yang tidak melanggar kondisi kebijakan".
- Kolom
Di objek
AlertStrategy, tetapkan kolomautoCloseke nilai minimumnya, yaitu 30 menit. Saat Anda menggunakan Cloud Monitoring API, tetapkan kolom ini ke30m.
Untuk mengetahui informasi selengkapnya, lihat Data metrik parsial.
Alur pemberitahuan
Misalkan pengukuran pemakaian CPU kurang dari 70% saat kebijakan pemberitahuan dibuat. Urutan berikut menggambarkan cara pemberitahuan dibuka dan ditutup:
Karena pengukuran pemakaian CPU kurang dari 70%, handler kebijakan membuat deret waktu "BAIK" dan tidak ada pemberitahuan yang dibuka.
Selanjutnya, asumsikan penggunaan CPU meningkat menjadi 93%. Handler kebijakan berhenti menghasilkan data deret waktu "BAIK" dan mulai menghasilkan data untuk deret waktu "KRITIS".
Pengelola pemberitahuan melihat deret waktu "KRITIS" baru yang memenuhi kondisi, lalu membuka pemberitahuan. Notifikasi menyertakan label tingkat keparahan dengan nilai
CRITICAL.Asumsikan penggunaan CPU turun menjadi 75%. Handler kebijakan berhenti membuat deret waktu "KRITIS" dan mulai membuat deret waktu "INFO".
Pengelola pemberitahuan melihat deret waktu "INFO" baru yang memenuhi kondisi, lalu membuka pemberitahuan. Notifikasi mencakup label tingkat keparahan dengan nilai
INFO.Pengelola pemberitahuan melihat bahwa tidak ada data yang masuk untuk deret waktu "KRITIS" dan pemberitahuan terbuka untuk deret waktu tersebut. Karena kebijakan dikonfigurasi untuk menutup pemberitahuan saat data berhenti tiba, pengelola pemberitahuan menutup pemberitahuan yang terkait dengan deret waktu "KRITIS". Oleh karena itu, hanya pemberitahuan yang label tingkat keparahannya memiliki nilai
INFOyang tetap terbuka.Terakhir, asumsikan bahwa pemakaian CPU turun menjadi 45%. Nilai ini kurang dari semua nilai minimum, sehingga handler kebijakan berhenti membuat deret waktu "INFO" dan mulai membuat deret waktu "GOOD".
Pengelola pemberitahuan melihat bahwa tidak ada data yang masuk untuk deret waktu "INFO" dan pemberitahuan terbuka untuk deret waktu tersebut. Karena kebijakan menggunakan setelan yang direkomendasikan, pemberitahuan ditutup.
Jika Anda tidak menggunakan nilai yang direkomendasikan untuk kolom evaluationMissingData, maka saat data berhenti tiba, pemberitahuan yang terbuka tidak akan langsung ditutup.
Akibatnya, Anda mungkin melihat beberapa peringatan terbuka untuk deret waktu input yang sama. Untuk mengetahui informasi selengkapnya, lihat
Data metrik parsial.
Langkah berikutnya
- Membuat kebijakan pemberitahuan menggunakan Monitoring API
- Membuat kebijakan pemberitahuan menggunakan PromQL
- Menangani data metrik parsial