Metrik label

Sebelum memulai

Untuk mendapatkan izin yang Anda perlukan untuk memberi label pada metrik atau melihat label metrik, minta Admin IAM Project Anda untuk memberi Anda salah satu peran berikut di namespace project Anda:

  • Editor Target Pemantauan: mengedit atau mengubah MonitoringTarget resource kustom. Minta peran Editor Target Pemantauan (monitoringtarget-editor).
  • Monitoring Target Viewer: melihat MonitoringTarget resource kustom. Minta peran Monitoring Target Viewer (monitoringtarget-viewer).

Label memungkinkan Anda membedakan karakteristik metrik. Selain mengumpulkan metrik, resource kustom MonitoringTarget memungkinkan Anda memberi label pada metrik untuk fitur opsional seperti berikut:

Untuk mengetahui informasi selengkapnya tentang pelabelan ulang metrik, lihat https://grafana.com/blog/2022/03/21/how-relabeling-in-prometheus-works/

Mengirim metrik ke project lain

Penulis penampung dapat menulis dalam kode mereka bahwa sistem harus mengirimkan metrik tertentu ke project lain untuk pemantauan sistem, meskipun project tersebut sesuai dengan persona GDC yang berbeda. Untuk mengirim metrik ke project tertentu, tambahkan label _gdch_project ke metrik dalam kode Anda. Tetapkan nilainya ke nama project yang ingin Anda miliki untuk metrik kemampuan pengamatan tertentu tersebut. Contoh, "_gdch_project": "another-project-name".

Atau, gunakan resource kustom MonitoringTarget untuk mengirim semua data metrik yang dikumpulkannya ke project lain untuk pengamatan data. Untuk melakukannya, tetapkan label _gdch_project sebagai label target di kolom metricsRelabelings dan tetapkan nilai pengganti.

Contoh kode berikut menunjukkan cara mengganti nilai label _gdch_project dengan another-project-name di resource kustom MonitoringTarget:

apiVersion: monitoring.gdc.goog/v1alpha1
kind: MonitoringTarget
metadata:
  # Choose the same namespace as the workload pods
  namespace: PROJECT_NAMESPACE
  name: string
spec:
  ...
  podMetricsEndpoints:
    ...
    metricsRelabelings:
      ...
      - action: replace
        targetLabel: _gdch_project
        replacement: another-project-name

Ganti PROJECT_NAMESPACE dengan namespace project Anda.

Menambahkan label baru ke metrik

Label berguna untuk pengamatan data dan pemantauan sistem karena memungkinkan Anda mengidentifikasi berbagai karakteristik metrik. Anda dapat menambahkan label baru ke metrik yang awalnya tidak diekspos oleh penampung yang dihapus. Di resource kustom MonitoringTarget, tetapkan label baru sebagai target dan buat penggantian untuk berfungsi sebagai nilai label. Sistem menambahkan pasangan nilai kunci baru ke semua metrik yang dikumpulkan resource kustom untuk tujuan pengamatan data Anda.

Contoh kode berikut menunjukkan cara menambahkan label my_new_label dan menetapkan nilainya ke my_label_value di resource kustom MonitoringTarget:

apiVersion: monitoring.gdc.goog/v1alpha1
kind: MonitoringTarget
metadata:
  # Choose the same namespace as the workload pods
  namespace: PROJECT_NAMESPACE
  name: string
spec:
  ...
  podMetricsEndpoints:
    ...
    metricsRelabelings:
      ...
      - action: replace
        targetLabel: my_new_label
        replacement: my_label_value

Ganti PROJECT_NAMESPACE dengan namespace project Anda.

Mengganti nama metrik

Anda dapat mengganti nama metrik yang dihasilkan penampung dari CR MonitoringTarget. Tetapkan nama asli metrik dan penggantinya di kolom metricsRelabelings. Resource kustom menggunakan nama metrik asli sebagai ekspresi reguler dan menggantinya dengan nama baru yang Anda tambahkan.

Contoh kode berikut menunjukkan cara mengganti nama metrik cpu_usage dengan cpu_usage_new_name di CR MonitoringTarget:

apiVersion: monitoring.gdc.goog/v1alpha1
kind: MonitoringTarget
metadata:
  # Choose the same namespace as the workload pods
  namespace: PROJECT_NAMESPACE
  name: string
spec:
  ...
  podMetricsEndpoints:
    ...
    metricsRelabelings:
      ...
      - action: replace
        regex: cpu_usage
        replacement: cpu_usage_new_name
        sourceLabels: [__name__]
        targetLabel: __name__

Ganti PROJECT_NAMESPACE dengan namespace project Anda.