Mit Labels können Sie die Merkmale eines Messwerts unterscheiden. Zusätzlich zum Erfassen von Messwerten können Sie mit der benutzerdefinierten MonitoringTarget
-Ressource Messwerte für optionale Funktionen zur Beobachtbarkeit kennzeichnen:
Weitere Informationen zum Neuzuweisen von Messwerten finden Sie unter https://grafana.com/blog/2022/03/21/how-relabeling-in-prometheus-works/.
Hinweise
Bitten Sie Ihren Organisations-IAM-Administrator oder Projekt-IAM-Administrator, Ihnen eine der zugehörigen MonitoringTarget
-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von benutzerdefinierten MonitoringTarget
-Ressourcen benötigen.
Je nach Zugriffsebene und erforderlichen Berechtigungen können Sie für diese Ressource in einer Organisation oder einem Projekt die Rollen „Ersteller“, „Bearbeiter“ oder „Betrachter“ erhalten. Weitere Informationen finden Sie unter IAM-Berechtigungen vorbereiten.
Messwerte an ein anderes Projekt senden
Containerautoren können bestimmte Messwerte so codieren, dass sie an ein anderes Projekt gesendet werden, auch an Projekte, die ihnen nicht gehören. Wenn Sie einen Messwert an ein bestimmtes Projekt senden möchten, fügen Sie dem Messwert in Ihrem Code das Label _gdch_project
hinzu und legen Sie seinen Wert auf den Namen des Zielprojekts fest.
Alternativ können Sie die benutzerdefinierte Ressource MonitoringTarget
verwenden, um alle erfassten Messwertdaten an ein anderes Projekt zu senden. Legen Sie das Label _gdch_project
als Ziellabel im Feld metricsRelabelings
fest. Der neue Projektname ist der Ersatzwert.
Im folgenden Codebeispiel wird gezeigt, wie Sie das Ziellabel _gdch_project
in der benutzerdefinierten Ressource MonitoringTarget
festlegen, um Messwerte an das Projekt mit dem Namen another-project-name
zu senden:
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
[...]
Ersetzen Sie Folgendes:
PROJECT_NAMESPACE
: Ihr Projekt-Namespace.MONITORING_TARGET_NAME
: der Name derMonitoringTarget
-Definitionsdatei.
Messwerten neue Labels hinzufügen
Labels helfen bei der Beobachtbarkeit und beim Monitoring, indem sie Messwertmerkmale identifizieren. Sie können Labels hinzufügen, die in den gescrapten Containern anfangs nicht verfügbar sind. Legen Sie in der benutzerdefinierten Ressource MonitoringTarget
das neue Label als Ziel fest und geben Sie einen Ersatzwert an. Dieses Schlüssel/Wert-Paar wird allen Messwerten hinzugefügt, die von der Ressource erfasst werden.
Im folgenden Codebeispiel wird gezeigt, wie Sie das Ziellabel my_new_label
festlegen und seinen Wert in der benutzerdefinierten Ressource MonitoringTarget
auf my_label_value
konfigurieren:
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
[...]
Ersetzen Sie Folgendes:
PROJECT_NAMESPACE
: Ihr Projekt-Namespace.MONITORING_TARGET_NAME
: der Name derMonitoringTarget
-Definitionsdatei.
Messwert umbenennen
Sie können einen Messwert eines Containers mit der Ressource MonitoringTarget
umbenennen. Legen Sie den ursprünglichen Messwertnamen und den Ersatz im Feld metricsRelabelings
fest.
Der ursprüngliche Name wird als regulärer Ausdruck (Regex) behandelt und durch den neuen Namen ersetzt.
Das folgende Codebeispiel zeigt, wie Sie den Messwertnamen cpu_usage
(regulärer Ausdruck) in der benutzerdefinierten Ressource MonitoringTarget
durch cpu_usage_new_name
ersetzen:
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__
[...]
Ersetzen Sie Folgendes:
PROJECT_NAMESPACE
: Ihr Projekt-Namespace.MONITORING_TARGET_NAME
: der Name derMonitoringTarget
-Definitionsdatei.