Menghitung metrik dari log

Menghitung metrik berarti menghasilkan metrik baru berdasarkan log atau metrik yang sudah ada untuk kemampuan pengamatan data. Anda menghitung metrik di GDC dengan mengonfigurasi aturan perekaman di resource kustom LoggingRule. Aturan perekaman melakukan pra-komputasi ekspresi yang sering diperlukan atau memerlukan biaya komputasi yang tinggi. Aturan ini menyimpan hasilnya sebagai deret waktu baru. Mengirim kueri hasil yang telah dihitung sebelumnya lebih cepat daripada mengeksekusi ekspresi asli setiap kali diperlukan. Pra-komputasi ini sangat berguna untuk dasbor dan pemberitahuan kompleks, yang harus mengkueri ekspresi yang sama berulang kali setiap kali diperbarui atau dievaluasi.

Anda mengonfigurasi aturan perekaman di resource kustom LoggingRule untuk menghitung metrik berdasarkan data logging sistem. Resource kustom LoggingRule berisi aturan perekaman yang menjelaskan kondisi untuk menghitung metrik baru berdasarkan log yang sudah ada.

Sebelum memulai

Untuk mendapatkan izin yang diperlukan untuk menghitung metrik dari log, minta Admin IAM Project Anda untuk memberi Anda salah satu peran berikut di namespace project Anda:

  • Pembuat Aturan Logging: membuat LoggingRule resource kustom. Minta peran Pembuat Aturan Logging (loggingrule-creator).
  • Editor Aturan Logging: mengedit atau mengubah LoggingRule resource kustom. Minta peran Logging Rule Editor (loggingrule-editor).
  • Logging Rule Viewer: melihat resource kustom LoggingRule. Minta peran Logging Rule Viewer (loggingrule-viewer).

Membuat aturan perekaman

Tentukan nama rekaman dan ekspresi valid yang mengevaluasi aturan. Ekspresi harus diselesaikan ke nilai numerik untuk merekamnya sebagai metrik baru. Deploy resource kustom di namespace project Anda pada cluster admin org untuk membuat aturan perekaman untuk platform Observability.

Untuk mengetahui informasi selengkapnya tentang aturan perekaman untuk Kemampuan Observasi, lihat https://grafana.com/docs/loki/latest/rules/

Ikuti langkah-langkah berikut untuk membuat aturan rekaman dan menghitung metrik di namespace project Anda:

  1. Buka atau buat file YAML untuk CR menggunakan template CR LoggingRule untuk aturan rekaman logging.
  2. Di kolom namespace CR, masukkan namespace project Anda.
  3. Di kolom name, masukkan nama untuk konfigurasi aturan.
  4. Opsional: Anda dapat memilih sumber log di kolom source. Misalnya, masukkan nilai seperti operational atau audit.
  5. Di kolom interval, masukkan jumlah detik untuk durasi interval evaluasi aturan.
  6. Opsional: Di kolom limit, masukkan jumlah maksimum pemberitahuan. Masukkan 0 untuk pemberitahuan tak terbatas.
  7. Di kolom recordRules, masukkan informasi berikut untuk menghitung metrik:

    • Di kolom record, masukkan nama rekaman. Nilai ini menentukan deret waktu tempat aturan penulisan data dan harus berupa nama metrik yang valid.
    • Di kolom expr, masukkan ekspresi LogQL untuk aturan log.

      Ekspresi ini harus diselesaikan ke nilai numerik untuk direkam sebagai metrik baru.

    • Opsional: Di kolom labels, tentukan label yang ingin Anda tambahkan atau ganti sebagai pasangan nilai kunci.

  8. Simpan file YAML CR.

  9. Deploy CR di namespace project cluster admin untuk membuat aturan rekaman.

Aturan rekaman LoggingRule

Resource kustom LoggingRule berisi aturan perekaman yang menjelaskan kondisi untuk menghitung metrik baru berdasarkan data logging sistem yang sudah ada sebelumnya untuk kemampuan pengamatan.

File YAML berikut menunjukkan template untuk kolom recordRules CR LoggingRule.

# Configures either an alert or a target record for precomputation
apiVersion: logging.gdc.goog/v1alpha1
kind: LoggingRule
metadata:
  # Choose namespace that matches the project's namespace
  # Note: The alert or record will be produced in the same namespace
  namespace: PROJECT_NAMESPACE
  name: alerting-config
spec:
  # Choose which log source to base alerts on (Operational/Audit/Security Logs)
  # Optional, Default: Operational
  source: <string>

  # Rule evaluation interval
  interval: <duration>

  # Configure limit for number of alerts (0: no limit)
  # Optional, Default: 0 (no limit)
  limit: <int>

  # Configure record rules to generate new metrics based on pre-existing logs.
  # Record rules generate metrics based on logs.
  # Use record rules for complex alerts, which query the same expression repeatedly every time they are evaluated.
  recordRules:
    # Define which timeseries to write to (must be a valid metric name)
  - record: <string>

    # Define LogQL expression to evaluate for this rule
    # https://grafana.com/docs/loki/latest/rules/
    expr: <string>

    # Define labels to add or overwrite
    # Optional, Map of {key, value} pairs
    labels:
      <labelname>: <labelvalue>
...

Ganti PROJECT_NAMESPACE dengan namespace project Anda.