Halaman ini menjelaskan alasan beberapa kebijakan pemberitahuan mungkin berperilaku berbeda dari yang dimaksudkan, dan menawarkan kemungkinan solusi untuk situasi tersebut.
Untuk mengetahui informasi tentang variabel yang dapat memengaruhi kebijakan pemberitahuan, misalnya, berdasarkan pilihan periode pengujian ulang, lihat Perilaku kebijakan pemberitahuan berbasis metrik.
Kebijakan penggunaan disk membuat pemberitahuan yang tidak terduga
Anda membuat kebijakan pemberitahuan untuk memantau kapasitas "yang digunakan" disk di sistem Anda. Kebijakan ini memantau metrik
agent.googleapis.com/disk/percent_used.
Anda berharap hanya diberi tahu jika pemakaian disk fisik melebihi nilai minimum yang Anda tetapkan dalam kondisi. Namun, kebijakan ini membuat pemberitahuan saat pemakaian disk setiap disk fisik kurang dari nilai minimum.
Penyebab umum munculnya pemberitahuan yang tidak terduga untuk kebijakan ini adalah kondisi yang tidak dibatasi untuk memantau disk fisik. Sebaliknya, kebijakan ini memantau semua disk, termasuk disk virtual seperti perangkat loopback. Jika disk virtual dibuat sedemikian rupa sehingga pemanfaatannya 100%, maka hal itu akan menyebabkan pemberitahuan untuk kebijakan dibuat.
Misalnya, pertimbangkan output perintah df Linux berikut, yang menunjukkan ruang disk yang tersedia di sistem file yang di-mount, untuk satu sistem:
$ df /dev/root 9983232 2337708 7629140 24% / devtmpfs 2524080 0 2524080 0% /dev tmpfs 2528080 0 2528080 0% /dev/shm ... /dev/sda15 106858 3934 102924 4% /boot/efi /dev/loop0 56704 56704 0 100% /snap/core18/1885 /dev/loop1 129536 129536 0 100% /snap/google-cloud-sdk/150 ...
Untuk sistem ini, kebijakan pemberitahuan penggunaan disk harus dikonfigurasi untuk
memfilter deret waktu untuk
perangkat loopback /dev/loop0 dan /dev/loop1. Misalnya, Anda dapat menambahkan filter device !=~ ^/dev/loop.*, yang mengecualikan semua deret waktu yang label device-nya tidak cocok dengan ekspresi reguler ^/dev/loop.*.
Penyebab umum pemberitahuan anomali
Anda membuat kebijakan pemberitahuan dan kebijakan tersebut tampaknya membuat pemberitahuan terlalu dini atau salah.
Ada berbagai alasan mengapa Anda mungkin menerima notifikasi peringatan yang tampaknya salah:
Jika ada kesenjangan dalam data, terutama untuk kebijakan pemberitahuan dengan kondisi batas “kurang dari” atau tidak adanya metrik, maka pemberitahuan dapat dibuat yang tampaknya tidak normal. Terkadang, pemberitahuan tidak menampilkan kesenjangan data, dan terkadang kesenjangan data diperbaiki secara otomatis:
Misalnya, dalam diagram, kesenjangan mungkin tidak muncul karena nilai untuk data yang hilang diinterpolasi. Meskipun data selama beberapa menit tidak ada, diagram akan menghubungkan titik yang tidak ada untuk kontinuitas visual. Celah dalam data pokok tersebut mungkin cukup bagi kebijakan pemberitahuan untuk membuat pemberitahuan.
Poin dalam metrik berbasis log dapat terlambat dan diisi ulang, hingga 10 menit sebelumnya. Perilaku pengisian ulang secara efektif memperbaiki kesenjangan; kesenjangan diisi saat data akhirnya tiba. Oleh karena itu, kesenjangan dalam metrik berbasis log yang tidak dapat dilihat lagi mungkin telah menyebabkan kebijakan pemberitahuan membuat pemberitahuan.
Kondisi tidak adanya metrik dan kondisi nilai minimum dievaluasi secara real time, dengan sedikit penundaan kueri. Status kondisi dapat berubah antara waktu evaluasi dan waktu saat pemberitahuan yang sesuai terlihat di Monitoring.
Kondisi yang dikonfigurasi untuk membuat pemberitahuan pada satu pengukuran dapat menghasilkan pemberitahuan yang tampaknya terlalu dini atau salah. Untuk mencegah situasi ini, pastikan beberapa pengukuran diperlukan sebelum pemberitahuan dibuat dengan menyetel periode pengujian ulang kondisi menjadi lebih dari dua kali lipat rasio pengambilan sampel metrik.
Misalnya, jika metrik diambil sampelnya setiap 60 detik, tetapkan periode pengujian ulang minimal 3 menit. Jika Anda menyetel periode pengujian ulang ke nilai terbaru, atau setara dengan 0 detik, maka satu pengukuran dapat menyebabkan pemberitahuan dibuat.
Saat kondisi kebijakan pemberitahuan diedit, mungkin perlu waktu beberapa menit agar perubahan diterapkan melalui infrastruktur pemberitahuan. Selama jangka waktu ini, Anda mungkin menerima notifikasi pemberitahuan yang memenuhi kondisi kebijakan pemberitahuan asli.
Saat data deret waktu tiba, mungkin perlu waktu hingga satu menit agar data tersebut berpropagasi melalui seluruh infrastruktur pemberitahuan. Selama proses ini, kebijakan pemberitahuan mungkin mengevaluasi kondisi sebagai terpenuhi meskipun data deret waktu belum disebarkan ke diagram deret waktu. Akibatnya, Anda mungkin menerima notifikasi meskipun diagram tidak menunjukkan bahwa kondisi terpenuhi. Untuk mengurangi kemungkinan situasi ini, gunakan periode penyelarasan minimal lima menit.
Penggantian nama label App Hub
metadata.system_labels.apphub_host_project_idmenjadimetadata.system_labels.apphub_application_containerdapat menyebabkan beberapa notifikasi baru dihasilkan dan beberapa notifikasi yang terbuka tidak ditutup.Tidak ada tindakan yang perlu dilakukan. Pemberitahuan akan ditutup secara otomatis saat data berhenti tiba, setelah durasi tutup otomatis berakhir. Untuk mengetahui informasi selengkapnya, lihat Data metrik parsial.
Pemberitahuan tidak ditutup saat data berhenti tiba
Anda mengikuti panduan di Data metrik parsial dan mengonfigurasi kebijakan pemberitahuan untuk menutup pemberitahuan saat data berhenti tiba. Dalam beberapa kasus, data berhenti masuk, tetapi pemberitahuan yang terbuka tidak ditutup secara otomatis.
Jika resource pokok yang dipantau oleh kebijakan pemberitahuan berisi
label metadata.system_labels.state, dan jika kebijakan tersebut tidak ditulis
dengan Bahasa Kueri Monitoring, maka Monitoring dapat menentukan status
resource. Jika status resource diketahui dinonaktifkan, maka
Pemantauan tidak akan otomatis menutup pemberitahuan saat data
berhenti masuk. Namun, Anda dapat menutup peringatan ini secara manual.
Tidak dapat melihat detail pemberitahuan karena error izin
Anda membuka halaman pemberitahuan di konsol Google Cloud dan memilih pemberitahuan untuk dilihat. Anda berharap halaman detail terbuka. Namun, halaman detail gagal dibuka dan pesan "Izin ditolak" ditampilkan.
Untuk melihat semua detail pemberitahuan kecuali data metrik, pastikan Anda memiliki peran Identity and Access Management (IAM) sebagai Monitoring Cloud Console Incident Viewer (roles/monitoring.cloudConsoleIncidentViewer) dan Stackdriver Accounts Viewer (roles/stackdriver.accounts.viewer).
Untuk melihat semua detail pemberitahuan, termasuk data metrik, dan agar dapat mengonfirmasi atau menutup pemberitahuan, pastikan Anda memiliki peran IAM Monitoring Viewer (roles/monitoring.viewer) dan Monitoring Cloud Console Incident Editor (roles/monitoring.cloudConsoleIncidentEditor).
Peran khusus tidak dapat memberikan izin yang diperlukan untuk melihat detail pemberitahuan.
Pemberitahuan tidak dibuat saat kondisi terpenuhi
Anda membuat kebijakan pemberitahuan yang memiliki satu kondisi. Diagram untuk kebijakan pemberitahuan menunjukkan bahwa data yang dipantau melanggar kondisi, tetapi Anda tidak menerima notifikasi dan pemberitahuan tidak dibuat.
Jika salah satu kriteria berikut terpenuhi setelah kondisi kebijakan pemberitahuan terpenuhi, Monitoring tidak akan membuka pemberitahuan.
- Kebijakan pemberitahuan ditunda.
- Kebijakan pemberitahuan dinonaktifkan.
- Kebijakan pemberitahuan telah mencapai jumlah maksimum pemberitahuan yang dapat dibuka secara bersamaan.
Status resource yang dipantau oleh kebijakan pemberitahuan diketahui dinonaktifkan. Monitoring dapat menentukan status resource saat resource berisi label
metadata.system_labels.statedan saat kebijakan pemberitahuan tidak ditulis dengan Bahasa Kueri Monitoring.
Daftar detail pemberitahuan mencantumkan project yang salah
Anda menerima notifikasi dan ringkasan kondisi mencantumkan projectGoogle Cloud tempat pemberitahuan dibuat, yaitu mencantumkan project cakupan. Namun, Anda mengharapkan pemberitahuan mencantumkan nama project Google Cloud yang menyimpan deret waktu yang menyebabkan Monitoring membuat pemberitahuan.
Opsi agregasi yang ditentukan dalam kondisi kebijakan pemberitahuan menentukan Google Cloud project yang dirujuk dalam notifikasi:
Jika opsi agregasi menghilangkan label yang menyimpan project ID, informasi pemberitahuan akan mencantumkan project cakupan. Misalnya, jika Anda mengelompokkan data hanya menurut zona, setelah pengelompokan, label yang menyimpan ID project akan dihapus.
Jika opsi agregasi mempertahankan label yang menyimpan project ID, notifikasi pemberitahuan akan menyertakan nama project Google Cloud yang menyimpan deret waktu yang menyebabkan pemberitahuan terjadi. Untuk mempertahankan label project ID, sertakan label
project_iddi kolom pengelompokan, atau jangan kelompokkan deret waktu.
Tidak dapat menutup pemberitahuan secara manual
Anda menerima notifikasi peringatan di sistem Anda. Anda akan membuka halaman detail pemberitahuan dan mengklik Tutup pemberitahuan. Anda berharap dialog peringatan ditutup; namun, Anda menerima pesan error:
Unable to close alert with active conditions.
Anda hanya dapat menutup pemberitahuan jika tidak ada pengamatan yang tiba dalam periode pemberitahuan terbaru. Periode pemberitahuan, yang biasanya memiliki nilai default 5 menit, ditentukan sebagai bagian dari kondisi kebijakan pemberitahuan dan dapat dikonfigurasi. Pesan error sebelumnya menunjukkan bahwa data telah diterima dalam periode pemberitahuan.
Error berikut terjadi saat notifikasi tidak dapat ditutup karena error internal:
Unable to close alert. Please try again in a few minutes.
Saat melihat pesan error sebelumnya, Anda dapat mencoba lagi operasi penutupan atau membiarkan Monitoring menutup pemberitahuan secara otomatis.
Untuk mengetahui informasi selengkapnya, lihat Mengelola pemberitahuan.
Kebijakan multi-kondisi membuat beberapa notifikasi
Anda membuat kebijakan pemberitahuan yang berisi beberapa kondisi, dan Anda menggabungkan kondisi tersebut dengan AND logis. Anda berharap mendapatkan satu notifikasi dan membuat satu pemberitahuan saat semua kondisi terpenuhi. Namun, Anda
menerima beberapa notifikasi dan melihat bahwa beberapa pemberitahuan
dibuat.
Monitoring mengirimkan notifikasi dan membuat pemberitahuan untuk setiap deret waktu yang menyebabkan kondisi terpenuhi. Akibatnya, saat Anda memiliki kebijakan pemberitahuan dengan beberapa kondisi, Anda berpotensi menerima satu notifikasi dan pemberitahuan untuk setiap deret waktu yang menyebabkan kondisi gabungan terpenuhi.
Misalnya, Anda memiliki kebijakan pemberitahuan dengan dua kondisi, dengan setiap kondisi memantau 3 deret waktu. Kebijakan mengirimkan notifikasi hanya jika kedua kondisi terpenuhi. Jika kondisi kebijakan Anda terpenuhi, Anda dapat menerima antara 2 (satu deret waktu terpenuhi di setiap kondisi) dan 6 (semua deret waktu terpenuhi di setiap kondisi) notifikasi dan pemberitahuan.
Anda tidak dapat mengonfigurasi Monitoring untuk membuat satu pemberitahuan dan mengirim satu notifikasi.
Untuk mengetahui informasi selengkapnya, lihat Kapan Monitoring mengirim notifikasi dan membuat pemberitahuan.
Variabel untuk label metrik memiliki nilai null
Anda membuat kebijakan pemberitahuan dan
menambahkan variabel untuk label metrik ke bagian dokumentasi.
Anda berharap notifikasi akan menampilkan nilai label yang dirujuk variabel. Namun, nilai variabel ditetapkan ke null.
Untuk mengatasi situasi ini, coba langkah-langkah berikut:
Pastikan setelan agregasi untuk kebijakan pemberitahuan mempertahankan label yang ingin Anda tampilkan.
Misalnya, anggap Anda membuat kebijakan pemberitahuan yang memantau byte disk yang ditulis oleh instance VM. Anda ingin dokumentasi mencantumkan perangkat yang menyebabkan notifikasi, jadi Anda menambahkan
device: ${metric.label.device}ke kolom dokumentasi.Anda juga harus memverifikasi bahwa setelan penggabungan Anda mempertahankan nilai label
device. Anda dapat mempertahankan label ini dengan menyetel fungsi agregasi kenoneatau dengan memverifikasi bahwa pilihan pengelompokan mencakupdevice.Verifikasi sintaksis dan penerapan variabel. Untuk mengetahui informasi sintaksis, lihat Memberikan anotasi pada notifikasi dengan dokumentasi yang ditentukan pengguna.
Misalnya, variabel
log.extracted_label.KEYhanya didukung untuk kebijakan pemberitahuan berbasis log. Variabel ini selalu dirender sebagainullsaat kebijakan pemberitahuan memantau metrik, bahkan metrik berbasis log.
Tidak ada data baru setelah perubahan pada definisi metrik
Anda mengubah definisi metrik yang ditentukan pengguna, misalnya, dengan mengubah filter yang Anda gunakan dalam metrik berbasis log, dan kebijakan pemberitahuan tidak mencerminkan perubahan yang Anda lakukan pada definisi metrik.
Untuk mengatasi masalah ini, paksa kebijakan pemberitahuan untuk diperbarui dengan mengedit nama tampilan kebijakan.
Pembuatan kebijakan pemberitahuan gagal di API karena metrik tidak ada
Anda baru saja membuat metrik, lalu mereferensikan metrik tersebut saat mencoba membuat kebijakan pemberitahuan di Cloud Monitoring API. Namun, perintah API gagal dan menampilkan error berikut:
Error 404: Cannot find metric(s) that match type = "METRIC_NAME". If a metric was created recently, it could take up to 10 minutes to become available. Please try again soon.
Untuk mengatasi masalah ini, tunggu setidaknya sepuluh menit lalu kirim ulang permintaan API.
Diagram kebijakan pemberitahuan tidak menampilkan pelanggaran nilai minimum
Anda menerima notifikasi bahwa peringatan dibuka untuk kebijakan pemberitahuan Anda. Namun, saat Anda membuka halaman detail kebijakan, diagram tidak menunjukkan bahwa batas tersebut dilanggar.
Untuk mengatasi situasi ini, coba perpendek rentang waktu untuk diagram. Anda dapat memperpendek rentang waktu menggunakan pemilih rentang waktu di toolbar, atau dengan menandai rentang waktu pada diagram dengan kursor.
Diagram memiliki resolusi terbatas dan mungkin tidak menampilkan setiap pengukuran untuk rentang waktu tertentu.