Label memungkinkan Anda membedakan karakteristik metrik. Selain
mengumpulkan metrik, resource kustom MonitoringTarget memungkinkan Anda memberi label pada metrik untuk fitur
kemampuan observasi opsional:
Untuk informasi selengkapnya tentang pelabelan ulang metrik, lihat https://grafana.com/blog/2022/03/21/how-relabeling-in-prometheus-works/.
Sebelum memulai
Untuk mengelola resource kustom MonitoringTarget, Anda harus memiliki izin yang diperlukan.
Meminta peran organisasi IAM
Hubungi Admin Organisasi IAM Anda untuk meminta peran berikut:
- MonitoringTarget PA Creator (
monitoringtarget-pa-creator): membuat resource kustomMonitoringTarget. - MonitoringTarget PA Editor (
monitoringtarget-pa-editor): mengedit atau mengubah resource kustomMonitoringTarget. - MonitoringTarget PA Viewer (
monitoringtarget-pa-viewer~): viewMonitoringTarget` custom resources.
Meminta peran project IAM
Hubungi IAM Project Admin Anda untuk meminta peran berikut:
- MonitoringTarget Editor (
monitoringtarget-editor): mengedit atau mengubah resource kustomMonitoringTargetdi namespace project. - MonitoringTarget Viewer (
monitoringtarget-viewer): melihat resource kustomMonitoringTargetdi namespace project.
Mengirim metrik ke project lain
Pembuat penampung dapat membuat kode metrik tertentu untuk dikirim ke project lain, bahkan ke project yang tidak mereka miliki. Untuk mengirim metrik ke project tertentu, tambahkan label _gdch_project ke metrik dalam kode Anda, dengan menetapkan nilainya ke nama project tujuan.
Atau, gunakan resource kustom MonitoringTarget untuk mengirim semua data metrik yang dikumpulkan ke project lain. Tetapkan label _gdch_project sebagai
label target di kolom metricsRelabelings, dengan nama project baru sebagai
nilai pengganti.
Contoh kode berikut menunjukkan cara menetapkan label target _gdch_project di
resource kustom MonitoringTarget untuk mengirim metrik ke project
bernama another-project-name:
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
# Choose the same namespace as the workload pods.
namespace: PROJECT_NAMESPACE
name: MONITORING_TARGET_NAME
spec:
[...]
podMetricsEndpoints:
[...]
metricsRelabelings:
- action: replace
targetLabel: _gdch_project
replacement: another-project-name
[...]
Ganti kode berikut:
PROJECT_NAMESPACE: namespace project Anda.MONITORING_TARGET_NAME: nama file definisiMonitoringTarget.
Menambahkan label baru ke metrik
Label membantu kemampuan observasi dan pemantauan dengan mengidentifikasi karakteristik metrik. Anda dapat menambahkan label yang awalnya tidak ditampilkan oleh container yang di-scrape. Di resource kustom MonitoringTarget, tetapkan label baru sebagai target
dan berikan nilai pengganti. Pasangan nilai kunci ini ditambahkan ke semua metrik yang dikumpulkan resource.
Contoh kode berikut menunjukkan cara menetapkan label target my_new_label dan
mengonfigurasi nilainya ke my_label_value di resource kustom
MonitoringTarget:
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
# Choose the same namespace as the workload pods.
namespace: PROJECT_NAMESPACE
name: MONITORING_TARGET_NAME
spec:
[...]
podMetricsEndpoints:
[...]
metricsRelabelings:
- action: replace
targetLabel: my_new_label
replacement: my_label_value
[...]
Ganti kode berikut:
PROJECT_NAMESPACE: namespace project Anda.MONITORING_TARGET_NAME: nama file definisiMonitoringTarget.
Mengganti nama metrik
Anda dapat mengganti nama metrik container menggunakan resource MonitoringTarget. Tetapkan
nama metrik asli dan penggantinya di kolom metricsRelabelings.
Nama asli diperlakukan sebagai ekspresi reguler (regex) dan diganti dengan nama baru.
Contoh kode berikut menunjukkan cara mengganti nama metrik cpu_usage
(regex) dengan cpu_usage_new_name di resource kustom MonitoringTarget:
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
# Choose the same namespace as the workload pods.
namespace: PROJECT_NAMESPACE
name: MONITORING_TARGET_NAME
spec:
[...]
podMetricsEndpoints:
[...]
metricsRelabelings:
- action: replace
regex: cpu_usage
replacement: cpu_usage_new_name
sourceLabels: [__name__]
targetLabel: __name__
[...]
Ganti kode berikut:
PROJECT_NAMESPACE: namespace project Anda.MONITORING_TARGET_NAME: nama file definisiMonitoringTarget.