Halaman ini menjelaskan cara membuat metrik baru dari metrik yang ada dengan men-deploy resource kustom MonitoringRule
di Google Distributed Cloud (GDC) yang terisolasi.
Aturan perekaman memungkinkan Anda menghitung terlebih dahulu ekspresi yang sering digunakan atau mahal secara komputasi, sehingga meningkatkan performa untuk dasbor dan pemberitahuan. Ditentukan
dalam resource kustom MonitoringRule
, aturan ini menghasilkan metrik deret waktu
baru dari metrik yang ada, sehingga meningkatkan kemampuan pengamatan data.
Dengan menyimpan hasil yang telah dihitung sebelumnya, aturan perekaman menghilangkan perhitungan berulang setiap kali ekspresi diperlukan. Metode ini mempercepat waktu kueri secara signifikan, terutama untuk dasbor dan pemberitahuan kompleks yang memerlukan evaluasi berulang dari ekspresi yang sama. Pada dasarnya, resource MonitoringRule
memungkinkan Anda memperoleh metrik baru dari metrik yang ada dengan menentukan kalkulasi yang diperlukan dalam aturan perekamannya.
Sebelum memulai
Untuk mendapatkan izin yang Anda perlukan untuk mengelola MonitoringRule
resource kustom, minta Admin IAM Organisasi atau Admin IAM Project Anda untuk memberi Anda salah satu MonitoringRule
peran terkait.
Bergantung pada tingkat akses dan izin yang Anda perlukan, Anda mungkin mendapatkan peran pembuat, editor, atau pelihat untuk resource ini di organisasi atau project. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan izin IAM.
Membuat aturan perekaman
Untuk membuat aturan perekaman, tentukan nama untuk metrik yang direkam dan ekspresi
yang valid yang menghasilkan nilai numerik. Ekspresi ini, saat dievaluasi,
akan menghasilkan metrik baru. Deploy resource kustom MonitoringRule
di namespace project Anda di server Management API untuk mengaktifkan aturan perekaman.
Untuk mengetahui informasi selengkapnya tentang aturan perekaman, lihat https://grafana.com/docs/loki/latest/rules/.
Ikuti langkah-langkah berikut untuk membuat aturan perekaman di namespace project Anda:
- Tentukan project GDC tempat Anda ingin membuat aturan perekaman.
Buat file YAML yang menentukan resource kustom
MonitoringRule
.Spesifikasi
MonitoringRule
lengkap menunjukkan contoh untuk aturan perekaman berbasis metrik. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API.Ganti nilai berikut dalam file YAML sesuai kebutuhan Anda:
Nama kolom Deskripsi namespace
Namespace project. name
Nama untuk konfigurasi aturan. interval
Durasi interval evaluasi aturan dalam detik. limit
Opsional. Jumlah maksimum pemberitahuan. Setel ke 0
untuk pemberitahuan tanpa batas.recordRules
Definisi untuk menghitung metrik baru. recordRules.record
Nama rekaman untuk metrik baru. Nilai harus berupa nama metrik yang valid yang menentukan deret waktu tempat hasil disimpan. recordRules.expr
Ekspresi PromQL untuk aturan metrik, yang harus dievaluasi menjadi nilai numerik. recordRules.labels
Opsional. Pasangan nilai kunci label yang akan ditambahkan ke atau menggantikan metrik baru. Simpan file YAML.
Terapkan konfigurasi
MonitoringRule
ke server Management API dalam namespace yang sama dengan aturan perekaman Anda:kubectl --kubeconfig KUBECONFIG_PATH apply -f MONITORING_RULE_NAME.yaml
Ganti kode berikut:
KUBECONFIG_PATH
: jalur ke file kubeconfig untuk server Management API.MONITORING_RULE_NAME
: nama file definisiMonitoringRule
.
Spesifikasi MonitoringRule
lengkap
Resource kustom MonitoringRule
berisi aturan perekaman yang menjelaskan kondisi untuk membuat metrik baru berdasarkan metrik yang ada untuk kemampuan pengamatan.
File YAML berikut menunjukkan template untuk resource kustom MonitoringRule
. Untuk mengetahui informasi selengkapnya, lihat
dokumentasi referensi API.
# Configures either an alert or a target record for precomputation.
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringRule
metadata:
# Choose a namespace that matches the project namespace.
# The alert or record is produced in the same namespace.
namespace: PROJECT_NAMESPACE
name: MONITORING_RULE_NAME
spec:
# Rule evaluation interval.
interval: 60s
# Configure the limit for the number of alerts.
# A value of '0' means no limit.
# Optional.
# Default value: '0'
limit: 0
# Configure recording rules to generate new metrics based on existing metrics.
# Recording rules precompute expressions that are frequently needed or computationally expensive.
# Results are saved as a new set of time series.
recordRules:
# Define the time series where you want to write the recording rule.
# The value must be a valid metric name.
- record: MyMetricsName
# Define the PromQL expression to evaluate for this rule.
expr: rate({service_name="bob-service"} [1m])
# Define labels to add or overwrite.
# Map of key-value pairs.
# Optional.
labels:
verb: read
Ganti kode berikut:
PROJECT_NAMESPACE
: namespace project Anda.MONITORING_RULE_NAME
: nama file definisiMonitoringRule
.