Membuat kebijakan pemberitahuan batas metrik

Dokumen ini menjelaskan cara menggunakan konsol Google Cloud untuk membuat kebijakan pemberitahuan berbasis metrik yang mengirim notifikasi saat nilai metrik lebih besar, atau lebih kecil, dari nilai minimum untuk periode pengujian ulang tertentu. Misalnya, kondisi kebijakan pemberitahuan mungkin terpenuhi jika penggunaan CPU lebih tinggi dari 80% selama minimal lima menit.

Konten ini tidak berlaku untuk kebijakan pemberitahuan berbasis log. Untuk mengetahui informasi tentang kebijakan pemberitahuan berbasis log, yang memberi tahu Anda saat pesan tertentu muncul di log, lihat Memantau log.

Dokumen ini tidak menjelaskan hal berikut:

Sebelum memulai

  1. Untuk mendapatkan izin yang diperlukan guna membuat dan mengubah kebijakan pemberitahuan menggunakan konsol Google Cloud, minta administrator untuk memberi Anda peran IAM Monitoring Editor (roles/monitoring.editor) di project Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

    Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

    Untuk informasi selengkapnya tentang peran Cloud Monitoring, lihat Mengontrol akses dengan Identity and Access Management.

  2. Pastikan Anda sudah memahami konsep umum kebijakan pemberitahuan. Untuk informasi tentang topik ini, lihat Ringkasan pemberitahuan.

  3. Konfigurasikan saluran notifikasi yang ingin Anda gunakan untuk menerima notifikasi. Untuk tujuan redundansi, sebaiknya buat beberapa jenis saluran notifikasi. Untuk informasi selengkapnya, lihat Membuat dan mengelola saluran notifikasi.

Membuat kebijakan pemberitahuan

Untuk membuat kebijakan pemberitahuan yang membandingkan nilai metrik tersebut dengan nilai minimum statis, lakukan tindakan berikut:

  1. Di konsol Google Cloud, buka halaman  Alerting:

    Buka Pemberitahuan

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Pilih Create policy.
  3. Pilih deret waktu yang akan dipantau:

    1. Klik Select a metric, buka menu untuk memilih jenis resource dan jenis metrik, lalu klik Apply.

      Menu Select a metric berisi fitur yang membantu Anda menemukan jenis metrik yang tersedia:

      • Untuk menemukan jenis metrik tertentu, gunakan Panel filter . Misalnya, jika Anda memasukkan util, Anda akan membatasi menu untuk menampilkan entri yang menyertakan util. Entri ditampilkan jika lulus pengujian "berisi" yang tidak peka huruf besar/kecil.
      • Untuk menampilkan semua jenis metrik, bahkan yang tidak memiliki data, klik Aktif. Secara default, menu hanya menampilkan jenis metrik dengan data. Untuk mengetahui informasi selengkapnya, lihat Metrik tidak tercantum dalam menu.

      Anda dapat memantau metrik bawaan atau metrik yang ditentukan pengguna.

    2. Opsional: Untuk memantau subset deret waktu yang cocok dengan metrik dan jenis resource yang Anda pilih di langkah sebelumnya, klik Tambahkan filter. Dalam dialog filter, pilih label yang akan digunakan untuk memfilter, pembanding, lalu nilai filter. Misalnya, filter zone =~ ^us.*.a$ menggunakan ekspresi reguler untuk mencocokkan semua data deret waktu yang nama zonanya dimulai dengan us dan diakhiri dengan a. Untuk informasi selengkapnya, lihat Memfilter deret waktu yang dipilih.

    3. Opsional: Untuk mengubah cara penyelarasan titik dalam deret waktu, di bagian Transform data, tetapkan kolom Rolling window dan Rolling window function.

      Jika Anda memantau metrik berbasis log, sebaiknya menu Periode rolling disetel ke minimal 10 menit.

      Kolom ini menentukan cara menggabungkan titik yang dicatat dalam jendela. Misalnya, asumsikan bahwa periode waktunya adalah 15 menit dan fungsi periode waktunya adalah max. Titik yang diselaraskan adalah nilai maksimum dari semua titik dalam 15 menit terakhir. Untuk mengetahui informasi selengkapnya, lihat Perataan: regulasi dalam seri.

      Anda juga dapat memantau kecepatan perubahan nilai metrik dengan menggunakan kolom Fungsi periode bergulir ke persentase perubahan. Untuk mengetahui informasi selengkapnya, lihat Memantau kecepatan perubahan.

    4. Opsional: Gabungkan deret waktu jika Anda ingin mengurangi jumlah deret waktu yang dipantau oleh kebijakan, atau jika Anda hanya ingin memantau kumpulan deret waktu. Misalnya, daripada memantau penggunaan CPU setiap instance VM, Anda dapat menghitung rata-rata penggunaan CPU untuk semua VM di zona, lalu memantau rata-rata tersebut. Secara default, deret waktu tidak digabungkan. Untuk informasi umum, lihat Pengurangan: menggabungkan deret waktu.

      Untuk menggabungkan semua deret waktu, lakukan hal berikut:

      1. Di bagian Sepanjang deret waktu, klik Luaskan.
      2. Tetapkan kolom Agregasi deret waktu ke nilai selain none. Misalnya, untuk menampilkan nilai rata-rata deret waktu, pilih mean.
      3. Pastikan kolom Time series group by kosong.

      Untuk menggabungkan, atau mengelompokkan, deret waktu menurut nilai label, lakukan hal berikut:

      1. Di bagian Sepanjang deret waktu, klik Luaskan.
      2. Tetapkan kolom Agregasi deret waktu ke nilai selain none.
      3. Di kolom Time series group by, pilih label yang akan digunakan untuk mengelompokkan.

      Misalnya, jika Anda mengelompokkan menurut label zone, lalu menetapkan kolom agregasi ke nilai mean, diagram akan menampilkan satu deret waktu untuk setiap zona yang memiliki data. Deret waktu yang ditampilkan untuk zona tertentu adalah rata-rata dari semua deret waktu dengan zona tersebut.

    5. Klik Berikutnya.

  4. Konfigurasikan pemicu kondisi:

    1. Biarkan kolom Jenis kondisi pada nilai default Batas.

    2. Opsional: Perbarui menu Pemicu pemberitahuan, yang memiliki nilai berikut:

      • Deret waktu mana pun melanggar: Setelan default. Setiap deret waktu yang melanggar nilai minimum untuk seluruh periode pengujian ulang akan menyebabkan kondisi terpenuhi.

      • Persentase deret waktu melanggar: Persentase deret waktu harus melanggar nilai minimum untuk seluruh periode pengujian ulang sebelum kondisi terpenuhi. Misalnya, Anda dapat menerima notifikasi saat 50% deret waktu yang dipantau melanggar batas untuk seluruh periode pengujian ulang.

      • Jumlah deret waktu yang melanggar: Jumlah deret waktu tertentu harus melanggar nilai minimum untuk seluruh periode pengujian ulang sebelum kondisi terpenuhi. Misalnya, Anda dapat menerima notifikasi saat 32 deret waktu yang dipantau melanggar nilai minimum untuk seluruh periode pengujian ulang.

      • Semua deret waktu melanggar: Semua deret waktu harus melanggar nilai minimum untuk seluruh periode pengujian ulang sebelum kondisi terpenuhi.

      Untuk informasi tentang interval yang digunakan Monitoring untuk menyelaraskan dan mengukur data deret waktu, lihat Periode penyelarasan dan periode pengujian ulang.

    3. Masukkan saat nilai metrik melanggar nilai minimum menggunakan kolom Posisi nilai minimum dan Nilai minimum. Misalnya, jika Anda menetapkan nilai ini ke Di atas nilai minimum dan 0.3, pengukuran apa pun yang lebih tinggi dari 0.3 akan melanggar nilai minimum.

    4. Opsional: Untuk memilih berapa lama pengukuran harus melanggar nilai minimum sebelum Monitoring mengirim notifikasi, luaskan Advanced options, lalu gunakan menu Retest window.

      Nilai defaultnya adalah Tidak ada pengujian ulang. Dengan setelan ini, satu pengukuran dapat menghasilkan notifikasi. Untuk informasi selengkapnya dan contoh, lihat Setelan durasi dan periode perataan.

    5. Opsional: Untuk menentukan cara Monitoring mengevaluasi kondisi saat data berhenti masuk, luaskan Advanced options, lalu gunakan menu Evaluation missing data.

      Menu Evaluasi data yang tidak ada dinonaktifkan jika nilai Periode pengujian ulang adalah Tidak ada pengujian ulang.

      Konsol Google Cloud
      Kolom "Evaluasi data yang tidak ada"
      Ringkasan Detail
      Data tidak ada kosong Insiden terbuka tetap terbuka.
      Insiden baru tidak dibuka.

      Untuk kondisi yang terpenuhi, kondisi tersebut akan terus terpenuhi saat data berhenti masuk. Jika insiden terbuka untuk kondisi ini, insiden akan tetap terbuka. Saat insiden terbuka dan tidak ada data yang masuk, penghitung waktu tutup otomatis akan dimulai setelah penundaan minimal 15 menit. Jika timer berakhir, insiden akan ditutup.

      Untuk kondisi yang tidak terpenuhi, kondisi tersebut akan terus tidak terpenuhi saat data berhenti masuk.

      Titik data yang hilang diperlakukan sebagai nilai yang melanggar kondisi kebijakan Insiden terbuka tetap terbuka.
      Insiden baru dapat dibuka.

      Untuk kondisi yang terpenuhi, kondisi tersebut akan terus terpenuhi saat data berhenti masuk. Jika insiden terbuka untuk kondisi ini, insiden akan tetap terbuka. Jika insiden terbuka dan tidak ada data yang masuk selama durasi penutupan otomatis ditambah 24 jam, insiden akan ditutup.

      Untuk kondisi yang tidak terpenuhi, setelan ini menyebabkan kondisi nilai minimum metrik berperilaku seperti metric-absence condition. Jika data tidak tiba dalam waktu yang ditentukan oleh periode pengujian ulang, kondisi akan dievaluasi sebagai terpenuhi. Untuk kebijakan pemberitahuan dengan satu kondisi, kondisi yang terpenuhi akan menyebabkan insiden dibuka.

      Titik data yang tidak ada diperlakukan sebagai nilai yang tidak melanggar kondisi kebijakan Insiden terbuka ditutup.
      Insiden baru tidak dibuka.

      Untuk kondisi yang terpenuhi, kondisi tersebut berhenti terpenuhi saat data berhenti masuk. Jika insiden terbuka untuk kondisi ini, insiden akan ditutup.

      Untuk kondisi yang tidak terpenuhi, kondisi tersebut akan terus tidak terpenuhi saat data berhenti masuk.

    6. Klik Berikutnya.

  5. Opsional: Buat kebijakan pemberitahuan dengan beberapa kondisi.

    Sebagian besar kebijakan memantau satu jenis metrik, misalnya, kebijakan mungkin memantau jumlah byte yang ditulis ke instance VM. Jika Anda ingin memantau beberapa jenis metrik, buat kebijakan dengan beberapa kondisi. Setiap kondisi memantau satu jenis metrik. Setelah membuat kondisi, Anda menentukan cara menggabungkan kondisi. Untuk mengetahui informasinya, lihat Kebijakan dengan beberapa kondisi.

    Untuk membuat kebijakan pemberitahuan dengan beberapa kondisi, lakukan langkah berikut:

    1. Untuk setiap kondisi tambahan, klik Tambahkan kondisi pemberitahuan, lalu konfigurasikan kondisi tersebut.
    2. Klik Berikutnya dan konfigurasi cara kondisi digabungkan.
    3. Klik Berikutnya untuk melanjutkan ke penyiapan notifikasi dan dokumentasi.
  6. Konfigurasikan notifikasi:

    1. Luaskan menu Notifikasi dan nama, lalu pilih saluran notifikasi Anda. Untuk tujuan redundansi, sebaiknya tambahkan beberapa jenis saluran notifikasi ke kebijakan pemberitahuan. Untuk mengetahui informasi selengkapnya, lihat Mengelola saluran notifikasi.

    2. Opsional: Untuk menerima notifikasi saat insiden ditutup, pilih Beri tahu saat insiden ditutup. Secara default, saat Anda membuat kebijakan pemberitahuan dengan konsol Google Cloud, notifikasi hanya dikirim saat insiden dibuat.

    3. Opsional: Untuk mengubah durasi tunggu Monitoring sebelum menutup insiden setelah data berhenti masuk, pilih opsi dari menu Incident autoclose duration. Secara default, saat data berhenti masuk, Monitoring akan menunggu tujuh hari sebelum menutup insiden yang terbuka.

    4. Pilih opsi dari menu Tingkat keparahan kebijakan. Insiden dan notifikasi menampilkan tingkat keparahan.

    5. Opsional: Untuk menambahkan label kustom ke kebijakan pemberitahuan, di bagian Label pengguna kebijakan, lakukan hal berikut:

      1. Klik Tambahkan label, dan di kolom Kunci, masukkan nama untuk label. Nama label harus diawali dengan huruf kecil, dan dapat berisi huruf kecil, angka, garis bawah, dan tanda pisah. Misalnya, masukkan severity.
      2. Klik Nilai dan masukkan nilai untuk label Anda. Nilai label dapat berisi huruf kecil, angka, garis bawah, dan tanda hubung. Misalnya, masukkan critical.

      Untuk mengetahui informasi tentang cara menggunakan label kebijakan untuk membantu Anda mengelola notifikasi, lihat Menambahkan anotasi pada insiden dengan label.

  7. Opsional: Di bagian Documentation, masukkan konten apa pun yang ingin Anda sertakan dengan notifikasi.

    Untuk memformat dokumentasi, Anda dapat menggunakan teks biasa, Markdown, dan variabel. Anda juga dapat menyertakan link untuk membantu pengguna men-debug insiden, seperti link ke playbook internal, dasbor Google Cloud, dan halaman eksternal. Misalnya, template dokumentasi berikut menjelaskan insiden penggunaan CPU untuk resource gce_instance dan menyertakan beberapa variabel untuk mereferensikan kebijakan pemberitahuan dan resource REST kondisi. Template dokumentasi kemudian mengarahkan pembaca ke halaman eksternal untuk membantu proses debug.

    Saat notifikasi dibuat, Monitoring akan mengganti variabel dokumentasi dengan nilainya. Nilai tersebut hanya menggantikan variabel dalam notifikasi. Panel pratinjau dan tempat lain di konsol Google Cloud hanya menampilkan pemformatan Markdown.

    Pratinjau

    ## CPU utilization exceeded
    
    ### Summary
    
    The ${metric.display_name} of the ${resource.type}
    ${resource.label.instance_id} in the project ${resource.project} has
    exceeded 90% for over 15 minutes.
    
    ### Additional resource information
    
    Condition resource name: ${condition.name}  
    Alerting policy resource name: ${policy.name}  
    
    ### Troubleshooting and Debug References
    
    Repository with debug scripts: example.com  
    Internal troubleshooting guide: example.com  
    ${resource.type} dashboard: example.com
    

    Format dalam notifikasi

    Contoh cara dokumentasi dirender dalam notifikasi.

    Untuk informasi selengkapnya, lihat Menambahkan anotasi pada notifikasi dengan dokumentasi yang ditentukan pengguna dan Menggunakan kontrol saluran.

  8. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.

  9. Klik Create policy.

Memfilter deret waktu yang dipilih

Filter memastikan bahwa hanya deret waktu yang memenuhi beberapa kumpulan kriteria yang dipantau. Saat menerapkan filter, Anda dapat mengurangi jumlah garis pada diagram, yang dapat meningkatkan performa diagram. Anda juga dapat mengurangi jumlah data yang dipantau dengan menerapkan agregasi. Filter memastikan bahwa hanya deret waktu yang memenuhi beberapa kumpulan kriteria yang digunakan. Saat Anda menerapkan filter, akan ada lebih sedikit deret waktu yang dievaluasi, yang dapat meningkatkan performa pemberitahuan.

Filter terdiri dari label, pembanding, dan nilai. Misalnya, untuk mencocokkan semua deret waktu yang label zone-nya dimulai dengan "us-central1", Anda dapat menggunakan filter zone=~"us-central1.*", yang menggunakan ekspresi reguler untuk melakukan perbandingan.

Saat memfilter menurut project ID atau penampung resource, Anda harus menggunakan operator sama dengan, (=). Saat memfilter menurut label lain, Anda dapat menggunakan pembanding apa pun yang didukung. Biasanya, Anda dapat memfilter label metrik dan resource, serta menurut grup resource.

Jika Anda memberikan beberapa kriteria pemfilteran, hanya deret waktu yang memenuhi semua kriteria yang akan dipantau.

Untuk menambahkan filter, klik Tambahkan filter, lengkapi dialog, lalu klik Selesai. Dalam dialog, Anda menggunakan kolom Filter untuk memilih kriteria yang akan digunakan untuk memfilter, memilih operator perbandingan, lalu memilih nilai. Setiap baris dalam tabel berikut mencantumkan operator perbandingan, maknanya, dan contohnya:

OperatorArtiContoh
= Equality resource.labels.zone = "us-central1-a"
!= Ketidaksetaraan resource.labels.zone != "us-central1-a"
=~ Kesamaan Regular expression2 monitoring.regex.full_match("^us.*")
!=~ Ketidaksetaraan Regular expression2 monitoring.regex.full_match("^us.*")
starts_with Nilai diawali dengan resource.labels.zone = starts_with("us")
ends_with Nilai diakhiri dengan resource.labels.zone = ends_with("b")
has_substring Nilai berisi resource.labels.zone = has_substring("east")
one_of Salah satu resource.labels.zone = one_of("asia-east1-b", "europe-north1-a")
!starts_with Nilai tidak diawali dengan resource.labels.zone != starts_with("us")
!ends_with Nilai tidak diakhiri dengan resource.labels.zone != ends_with("b")
!has_substring Nilai tidak berisi resource.labels.zone != has_substring("east")
!one_of Nilai bukan salah satu dari resource.labels.zone != one_of("asia-east1-b", "europe-north1-a")

Memecahkan masalah

Bagian ini berisi tips pemecahan masalah.

Metrik tidak tercantum dalam menu metrik yang tersedia

Untuk memantau metrik yang tidak tercantum di menu Pilih metrik, lakukan salah satu tindakan berikut:

  • Untuk membuat kebijakan pemberitahuan yang memantau metrik Google Cloud, luaskan menu Select a metric, lalu klik Active. Jika dinonaktifkan, menu akan mencantumkan semua metrik untuk layanan Google Cloud, dan semua metrik dengan data.

  • Untuk mengonfigurasi kondisi jenis metrik kustom sebelum jenis metrik tersebut menghasilkan data, Anda harus menentukan jenis metrik menggunakan filter Pemantauan:

    1. Pilih ? di header bagian Select metric, lalu pilih Direct filter mode di tooltip.
    2. Masukkan filter pemantauan atau pemilih deret waktu. Untuk informasi tentang sintaksis, lihat dokumen berikut:

Memantau laju perubahan

Untuk memantau laju perubahan nilai metrik, tetapkan kolom Fungsi periode bergulir ke perubahan persen. Saat kondisi dievaluasi, Monitoring akan menghitung tingkat perubahan metrik sebagai persentase, lalu membandingkan persentase tersebut dengan nilai minimum kondisi. Proses perbandingan ini mengikuti dua langkah:

  1. Jika deret waktu memiliki jenis metrik DELTA atau CUMULATIVE, deret waktu tersebut akan dikonversi menjadi deret waktu yang memiliki jenis metrik GAUGE. Untuk informasi tentang konversi, lihat Jenis, jenis, dan konversi.
  2. Pemantauan menghitung persentase yang berubah dengan membandingkan nilai rata-rata dalam periode geser 10 menit terbaru dengan nilai rata-rata dari periode geser 10 menit sebelum awal periode perataan.

Anda tidak dapat mengubah periode geser 10 menit yang digunakan untuk perbandingan dalam kebijakan pemberitahuan rasio perubahan. Namun, Anda menentukan periode penyelarasan saat membuat kondisi.

Langkah selanjutnya