Memberikan anotasi pemberitahuan menggunakan label

Label buatan pengguna pada kebijakan pemberitahuan di Cloud Monitoring memungkinkan Anda mengatur dan memprioritaskan pemberitahuan. Saat Anda mengonfigurasi label ini, Monitoring akan menampilkannya pada kebijakan pemberitahuan dan pemberitahuan, serta dapat menyertakannya dalam notifikasi.

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 dapat berupa label buatan pengguna atau label yang telah ditentukan sebelumnya.

Label buatan pengguna

Label buatan pengguna berisi informasi yang Anda tentukan. Label ini dapat memiliki nilai statis atau dinamis:

Kunci label harus diawali dengan huruf kecil. Kunci label dan nilai label hanya boleh berisi huruf kecil, digit, garis bawah, dan tanda pisah.

Label yang telah ditentukan sebelumnya

Label yang telah ditentukan sebelumnya disertakan dalam deskriptor resource; label ini harus diisi saat data deret waktu ditulis. Label ini menampilkan informasi tentang metrik yang dikumpulkan atau resource tempat metrik ditulis. 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 App Hub

App Hub 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:

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 buatan pengguna statis tercantum di bagian Label Pengguna. Label buatan pengguna dinamis dan label yang telah ditentukan sebelumnya tidak terlihat.
  • Pemberitahuan: Label buatan pengguna statis tercantum di bagian Label Kebijakan, dan label buatan pengguna dinamis tercantum di bagian Label Metrik. Label yang telah ditentukan sebelumnya tercantum di bagian Label Resource yang Dipantau dan Label Metrik.
  • Notifikasi: Label yang telah ditentukan sebelumnya dan label buatan pengguna tercantum dalam jenis notifikasi berikut:

    • Email
    • 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 penggunaan 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 mengilustrasikan cara kebijakan pemberitahuan yang menggunakan kueri PromQL memproses data deret waktu yang dipantaunya:

Ilustrasi cara kebijakan pemberitahuan memproses deret waktu yang dipantau.

Penangan kebijakan memproses data penggunaan CPU dan menampilkan deret waktu yang menunjukkan kapan kondisi terpenuhi. Pada contoh sebelumnya, kondisi terpenuhi saat penggunaan CPU minimal 70%. Untuk setiap deret waktu input, penangan kebijakan dapat menghasilkan 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.
"CRITICAL" Ya Penggunaan CPU minimal 90%. Deret waktu output memiliki label yang sama dengan deret waktu "GOOD" ditambah label tingkat keparahan dengan nilai "CRITICAL".
"WARNING" Ya Penggunaan CPU minimal 80% tetapi kurang dari 90%. Deret waktu output memiliki label yang sama dengan deret waktu "GOOD" ditambah label tingkat keparahan dengan nilai "WARNING".
"INFO" Ya Penggunaan CPU minimal 70% tetapi kurang dari 80%. Deret waktu output memiliki label yang sama dengan deret waktu "GOOD" ditambah label tingkat keparahan dengan nilai "INFO".

Data deret waktu yang dihasilkan oleh penangan kebijakan adalah input ke pengelola pemberitahuan, yang menentukan kapan pemberitahuan dibuat dan ditutup. Untuk menentukan kapan pemberitahuan ditutup, pengelola pemberitahuan menggunakan nilai kolom duration, evaluationMissingData, dan autoClose.

Praktik terbaik

Untuk memverifikasi bahwa paling banyak satu pemberitahuan terbuka pada satu waktu saat Anda membuat label yang nilainya ditetapkan secara dinamis, lakukan hal berikut:

  • Dalam objek MetricThreshold, ganti nilai default untuk kolom berikut:

    • Kolom duration: Tetapkan ke nilai bukan nol.
    • Kolom evaluationMissingData: Tetapkan agar pemberitahuan ditutup saat data berhenti diterima. Saat menggunakan Cloud Monitoring API, tetapkan kolom ini ke EVALUATION_MISSING_DATA_INACTIVE. Saat menggunakan konsol Google Cloud , tetapkan kolom ke "Missing data points treated as values that don't violate the policy condition".
  • Dalam objek AlertStrategy, tetapkan kolom autoClose ke nilai minimumnya, yaitu 30 menit. Saat menggunakan Cloud Monitoring API, tetapkan kolom ini ke 30m.

Untuk mengetahui informasi selengkapnya, lihat Data metrik parsial.

Alur pemberitahuan

Misalkan pengukuran penggunaan CPU kurang dari 70% saat kebijakan pemberitahuan dibuat. Urutan berikut mengilustrasikan cara pemberitahuan dibuka dan ditutup:

  1. Karena pengukuran penggunaan CPU kurang dari 70%, penangan kebijakan akan menghasilkan deret waktu "GOOD" dan tidak ada pemberitahuan yang dibuka.

  2. Selanjutnya, asumsikan penggunaan CPU naik menjadi 93%. Penangan kebijakan berhenti menghasilkan data deret waktu "GOOD" dan mulai menghasilkan data untuk deret waktu "CRITICAL".

    Pengelola pemberitahuan melihat deret waktu "CRITICAL" baru yang memenuhi kondisi, lalu membuka pemberitahuan. Notifikasi menyertakan label tingkat keparahan dengan nilai CRITICAL.

  3. Asumsikan penggunaan CPU turun menjadi 75%. Penangan kebijakan berhenti menghasilkan deret waktu "CRITICAL" dan mulai menghasilkan deret waktu "INFO".

    Pengelola pemberitahuan melihat deret waktu "INFO" baru yang memenuhi kondisi, lalu membuka pemberitahuan. Notifikasi menyertakan label tingkat keparahan dengan nilai INFO.

    Pengelola pemberitahuan melihat bahwa tidak ada data yang diterima untuk deret waktu "CRITICAL" dan pemberitahuan terbuka untuk deret waktu tersebut. Karena kebijakan dikonfigurasi untuk menutup pemberitahuan saat data berhenti diterima, pengelola pemberitahuan akan menutup pemberitahuan yang terkait dengan deret waktu "CRITICAL". Oleh karena itu, hanya pemberitahuan yang label tingkat keparahannya memiliki nilai INFO yang tetap terbuka.

  4. Terakhir, asumsikan penggunaan CPU turun menjadi 45%. Nilai ini kurang dari semua batas, sehingga penangan kebijakan berhenti menghasilkan deret waktu "INFO" dan mulai menghasilkan deret waktu "GOOD".

    Pengelola pemberitahuan melihat bahwa tidak ada data yang diterima untuk deret waktu "INFO" dan pemberitahuan terbuka untuk deret waktu tersebut. Karena kebijakan menggunakan setelan yang direkomendasikan, pemberitahuan akan ditutup.

Jika Anda tidak menggunakan nilai yang direkomendasikan untuk kolom evaluationMissingData, pemberitahuan yang terbuka tidak akan segera ditutup saat data berhenti diterima. Akibatnya, Anda mungkin melihat beberapa pemberitahuan terbuka untuk deret waktu input yang sama. Untuk mengetahui informasi selengkapnya, lihat Data metrik parsial.

Langkah berikutnya