Metriche delle etichette

Le etichette ti consentono di distinguere le caratteristiche di una metrica. Oltre a raccogliere le metriche, la MonitoringTarget risorsa personalizzata ti consente di etichettare le metriche per le funzionalità di osservabilità facoltative:

Per ulteriori informazioni sul rietichettatura delle metriche, consulta la pagina https://grafana.com/blog/2022/03/21/how-relabeling-in-prometheus-works/.

Prima di iniziare

Per gestire le risorse personalizzate MonitoringTarget, devi disporre delle autorizzazioni necessarie.

Richiedere i ruoli IAM dell'organizzazione

Contatta l'amministratore IAM dell'organizzazione per richiedere i seguenti ruoli:

  • MonitoringTarget PA Creator (monitoringtarget-pa-creator): crea risorse personalizzate MonitoringTarget.
  • MonitoringTarget PA Editor (monitoringtarget-pa-editor): modifica le risorse personalizzate MonitoringTarget.
  • MonitoringTarget PA Viewer (monitoringtarget-pa-viewer~): view visualizza le risorse personalizzate `MonitoringTarget`.

Richiedere i ruoli IAM del progetto

Contatta l'amministratore IAM del progetto per richiedere i seguenti ruoli:

  • MonitoringTarget Editor (monitoringtarget-editor): modifica le risorse personalizzate MonitoringTarget nello spazio dei nomi del progetto.
  • MonitoringTarget Viewer (monitoringtarget-viewer): visualizza le risorse personalizzate MonitoringTarget nello spazio dei nomi del progetto.

Inviare metriche a un altro progetto

Gli autori dei container possono codificare metriche specifiche da inviare a un altro progetto, anche a progetti di cui non sono proprietari. Per inviare una metrica a un progetto specifico, aggiungi l'etichetta _gdch_project alla metrica nel codice, impostandone il valore sul nome del progetto di destinazione.

In alternativa, utilizza la risorsa personalizzata MonitoringTarget per inviare tutti i dati delle metriche raccolte a un altro progetto. Imposta l'etichetta _gdch_project come etichetta di destinazione nel campo metricsRelabelings, con il nuovo nome del progetto come valore di sostituzione.

Il seguente esempio di codice mostra come impostare l'etichetta di destinazione _gdch_project nella risorsa personalizzata MonitoringTarget per inviare le metriche al progetto denominato 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
      [...]

Sostituisci quanto segue:

  • PROJECT_NAMESPACE: lo spazio dei nomi del progetto.
  • MONITORING_TARGET_NAME: il nome del file di definizione MonitoringTarget.

Aggiungere nuove etichette alle metriche

Le etichette aiutano a migliorare l'osservabilità e il monitoraggio identificando le caratteristiche delle metriche. Puoi aggiungere etichette che i container sottoposti a scraping non espongono inizialmente. Nella risorsa personalizzata MonitoringTarget, imposta la nuova etichetta come destinazione e fornisci un valore di sostituzione. Questa coppia chiave-valore viene aggiunta a tutte le metriche raccolte dalla risorsa.

Il seguente esempio di codice mostra come impostare l'etichetta di destinazione my_new_label e configurarne il valore su my_label_value nella risorsa personalizzata 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
      [...]

Sostituisci quanto segue:

  • PROJECT_NAMESPACE: lo spazio dei nomi del progetto.
  • MONITORING_TARGET_NAME: il nome del file di definizione MonitoringTarget.

Rinominare una metrica

Puoi rinominare la metrica di un container utilizzando la risorsa MonitoringTarget. Imposta il nome della metrica originale e la relativa sostituzione nel campo metricsRelabelings. Il nome originale viene trattato come un'espressione regolare e viene sostituito dal nuovo nome.

Il seguente esempio di codice mostra come sostituire il nome della metrica cpu_usage (espressione regolare) con cpu_usage_new_name nella risorsa personalizzata 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__
      [...]

Sostituisci quanto segue:

  • PROJECT_NAMESPACE: lo spazio dei nomi del progetto.
  • MONITORING_TARGET_NAME: il nome del file di definizione MonitoringTarget.