Les libellés vous permettent de différencier les caractéristiques d'une métrique. En plus de collecter des métriques, la ressource personnalisée MonitoringTarget
vous permet de libeller les métriques pour les fonctionnalités d'observabilité facultatives :
Pour en savoir plus sur le réétiquetage des métriques, consultez https://grafana.com/blog/2022/03/21/how-relabeling-in-prometheus-works/.
Avant de commencer
Pour obtenir les autorisations nécessaires pour gérer les ressources personnalisées MonitoringTarget
, demandez à votre administrateur IAM de l'organisation ou du projet de vous accorder l'un des rôles MonitoringTarget
associés.
Selon le niveau d'accès et les autorisations dont vous avez besoin, vous pouvez obtenir des rôles de créateur, d'éditeur ou de lecteur pour cette ressource dans une organisation ou un projet. Pour en savoir plus, consultez Préparer les autorisations IAM.
Envoyer des métriques vers un autre projet
Les auteurs de conteneurs peuvent coder des métriques spécifiques à envoyer à un autre projet, même à des projets dont ils ne sont pas propriétaires. Pour envoyer une métrique à un projet spécifique, ajoutez le libellé _gdch_project
à la métrique dans votre code, en définissant sa valeur sur le nom du projet de destination.
Vous pouvez également utiliser la ressource personnalisée MonitoringTarget
pour envoyer toutes les données de métriques collectées à un autre projet. Définissez le libellé _gdch_project
comme libellé cible dans le champ metricsRelabelings
, avec le nouveau nom de projet comme valeur de remplacement.
L'exemple de code suivant montre comment définir le libellé cible _gdch_project
dans la ressource personnalisée MonitoringTarget
pour envoyer des métriques au projet nommé 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
[...]
Remplacez les éléments suivants :
PROJECT_NAMESPACE
: espace de noms de votre projet.MONITORING_TARGET_NAME
: nom du fichier de définitionMonitoringTarget
.
Ajouter des libellés aux métriques
Les libellés facilitent l'observabilité et la surveillance en identifiant les caractéristiques des métriques. Vous pouvez ajouter des libellés que les conteneurs extraits n'exposent pas initialement. Dans la ressource personnalisée MonitoringTarget
, définissez le nouveau libellé comme cible et fournissez une valeur de remplacement. Cette paire clé-valeur est ajoutée à toutes les métriques collectées par la ressource.
L'exemple de code suivant montre comment définir le libellé cible my_new_label
et configurer sa valeur sur my_label_value
dans la ressource personnalisée 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
[...]
Remplacez les éléments suivants :
PROJECT_NAMESPACE
: espace de noms de votre projet.MONITORING_TARGET_NAME
: nom du fichier de définitionMonitoringTarget
.
Renommer une métrique
Vous pouvez renommer la métrique d'un conteneur à l'aide de la ressource MonitoringTarget
. Définissez le nom de la métrique d'origine et son remplacement dans le champ metricsRelabelings
.
Le nom d'origine est traité comme une expression régulière (regex) et est remplacé par le nouveau nom.
L'exemple de code suivant montre comment remplacer le nom de métrique cpu_usage
(expression régulière) par cpu_usage_new_name
dans la ressource personnalisée 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__
[...]
Remplacez les éléments suivants :
PROJECT_NAMESPACE
: espace de noms de votre projet.MONITORING_TARGET_NAME
: nom du fichier de définitionMonitoringTarget
.