Je crée un tableau de bord Grafana et je veux un panneau qui rapporte la dernière version de notre application. La version est signalée comme une étiquette dans le app_version
(par exemple) métrique comme ceci:
app_version_updated{instance="eu99",version="1.5.0-abcdefg"}
J'ai essayé un certain nombre de requêtes Prometheus pour extraire l'étiquette de version sous forme de chaîne du dernier membre de cette série chronologique, sans aucun effet.
Par exemple, la requête
count(app_version_updated) by (version)
renvoie un {version="1.5.0-abcdefg"}
élément avec une valeur de 1
. Lorsqu'il est placé dans un tableau de bord Grafana dans un panneau de valeur unique, cela n'affiche pas la version chaîne mais plutôt la valeur de comptage (1
).
Comment puis-je construire une requête Prometheus qui renvoie la chaîne de version?
Nous avons récemment ajouté la prise en charge de l'affichage du nom de série en tant que valeur dans le panneau de statistiques unique ( https://github.com/grafana/grafana/issues/474 ). Vous devez donc exécuter notre version nocturne jusqu'à la version 4.0.
Assurez-vous simplement que la requête renvoie une série et vous pouvez utiliser la valeur "nom" dans le menu déroulant sous Options -> grande valeur. Ensuite, vous pouvez formater la chaîne à l'aide du formateur de légende. Ex {{job}} renverrait "node" comme nom de série.
J'espère que cela répond à votre question.
Prometheus n'a pas de fonctions qui renvoient des chaînes, ce que vous cherchez, c'est qu'un singlestat Grafana puisse afficher une valeur d'étiquette - ce qu'il ne prend malheureusement pas encore en charge.
Ma réponse essaie de développer la réponse de Carl. Je suppose que la disposition de l'interface graphique peut avoir changé un peu depuis 2016, il m'a donc fallu un certain temps pour trouver l'option "nom".
En supposant que vous ayez une métrique comme suit:
# HELP db2_prometheus_adapter_info Information on the state of the DB2-Prometheus-Adapter
# TYPE db2_prometheus_adapter_info gauge
db2_prometheus_adapter_info{app_state="UP") 1.0
et vous souhaitez afficher la valeur de l'étiquette app_state
.
Suivez ces étapes:
db2_prometheus_adapter_info
) de la métrique.{{[LABEL]}}
notation (ici {{app_state}}
).Remarque sur le paramètre "Instantané": ce paramètre passe d'une requête de plage à une requête simplifiée renvoyant uniquement la valeur la plus récente de la métrique (voir également Que fait la case à cocher "instantanée" dans les graphiques grafana basés sur prometheus? ). S'il n'est pas activé, le panneau affichera une erreur dès qu'il y aura plus d'une valeur distincte pour l'étiquette dans l'historique de la métrique. Pour une métrique "normale", vous pouvez remédier à cela en choisissant "courant" dans l'option "Valeur - Stat". Mais cela ne permet pas d'afficher la valeur de votre étiquette.