Memberikan anotasi pada insiden dengan label

Dokumen ini menjelaskan cara Anda dapat mengatur dan memprioritaskan insiden dengan memberi label yang ditentukan pengguna. Label ini dikonfigurasi pada kebijakan pemberitahuan dan tercantum dalam kebijakan pemberitahuan dan insiden. Bergantung pada konfigurasi Anda, label juga dicantumkan pada notifikasi tertentu.

Tentang label

Label, yang merupakan pasangan nilai kunci, digunakan untuk melampirkan informasi ke deret waktu, kebijakan pemberitahuan, insiden, 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:

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

Label standar

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 insiden berdasarkan deret waktu tersebut, insiden 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 infrastruktur membuat dasbor aplikasi, layanan, dan workload yang menampilkan data metrik dan log. Google Cloud Untuk mengetahui informasi selengkapnya, lihat salah satu dokumen berikut:

Cara melihat label

Anda dapat melihat label kebijakan pemberitahuan atau insiden di halaman detail insiden, halaman detail kebijakan pemberitahuan, dan di beberapa notifikasi.

  • Kebijakan pemberitahuan: Label yang ditentukan pengguna statis tercantum di bagian Label Pengguna. Label buatan pengguna dinamis dan label bawaan tidak terlihat.
  • Insiden: 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:

    • Email
    • Google Chat
    • PagerDuty
    • Pub/Sub
    • Webhook

Contoh: Menambahkan label buatan pengguna dengan nilai dinamis

Anda dapat menggunakan MQL untuk mengonfigurasi label sehingga nilainya berubah secara dinamis berdasarkan data deret waktu. Misalnya, Anda ingin insiden Anda memiliki label criticality yang nilainya berubah bergantung pada nilai metrik pemakaian CPU yang dipantau:

fetch gce_instance
| metric 'compute.googleapis.com/instance/cpu/utilization'
| group_by sliding(5m), [value_utilization_mean: mean(value.utilization)]
| map
    add[
      criticality:
        if(val() >= 90 '%', 'CRITICAL',
          if(val() >= 80 '%', 'WARNING',
            if(val() >= 70 '%', 'INFO', 'GOOD')))
    ]
| condition val() >= 70 '%'

Gambar berikut mengilustrasikan cara kebijakan pemberitahuan yang menggunakan kueri MQL memproses data deret waktu yang dipantaunya:

Ilustrasi tentang cara kebijakan pemberitahuan memproses deret waktu yang dipantau.

Handler kebijakan memproses data pemakaian CPU dan menghasilkan deret waktu yang menunjukkan kapan kondisi terpenuhi. Dalam contoh sebelumnya, kondisi terpenuhi jika penggunaan 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 pengendali kebijakan adalah input ke pengelola insiden, yang menentukan kapan insiden dibuat dan ditutup. Untuk menentukan kapan harus menutup insiden, pengelola insiden menggunakan nilai kolom duration, evaluationMissingData, dan autoClose.

Praktik terbaik

Untuk memverifikasi bahwa paling banyak satu insiden 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: Tetapkan agar insiden ditutup saat data berhenti masuk. Saat Anda menggunakan Cloud Monitoring API, setel kolom ini ke EVALUATION_MISSING_DATA_INACTIVE. Saat Anda menggunakan konsol Google Cloud , tetapkan kolom ke "Titik data yang hilang diperlakukan sebagai nilai yang tidak melanggar kondisi kebijakan".
  • Di objek AlertStrategy, tetapkan kolom autoClose ke nilai minimumnya, yaitu 30 menit. Saat Anda menggunakan Cloud Monitoring API, setel kolom ini ke 30m.

Untuk mengetahui informasi selengkapnya, lihat Data metrik parsial.

Alur insiden

Misalkan pengukuran pemakaian CPU kurang dari 70% saat kebijakan pemberitahuan dibuat. Urutan berikut menggambarkan cara insiden dibuka dan ditutup:

  1. Karena pengukuran penggunaan CPU kurang dari 70%, handler kebijakan menghasilkan deret waktu "BAIK" dan tidak ada insiden yang dibuka.

  2. Selanjutnya, asumsikan pemakaian CPU naik menjadi 93%. Handler kebijakan berhenti membuat data deret waktu "BAIK" dan mulai membuat data untuk deret waktu "KRITIS".

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

  3. Asumsikan penggunaan CPU turun menjadi 75%. Handler kebijakan berhenti membuat deret waktu "KRITIS" dan mulai membuat deret waktu "INFO".

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

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

  4. 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 insiden melihat bahwa tidak ada data yang masuk untuk deret waktu "INFO" dan bahwa insiden terbuka untuk deret waktu tersebut. Karena kebijakan menggunakan setelan yang direkomendasikan, insiden ditutup.

Jika Anda tidak menggunakan nilai yang direkomendasikan untuk kolom evaluationMissingData, maka saat data berhenti masuk, insiden yang belum terselesaikan tidak akan langsung ditutup. Akibatnya, Anda mungkin melihat beberapa insiden terbuka untuk deret waktu input yang sama. Untuk mengetahui informasi selengkapnya, lihat Data metrik parsial.

Langkah berikutnya