Utilisation de la source de données Prometheus - Amazon Managed Grafana

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation de la source de données Prometheus

Réglages de Prometheus

Name (Nom) Description
Name Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.
Default La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.
Url L'URL de votre serveur Prometheus ; par exemple,. https://prometheus.example.org:9090
Access Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana.
Basic Auth Activez l'authentification de base auprès de la source de données Prometheus.
User Nom d'utilisateur pour l'authentification de base.
Password Mot de passe pour l'authentification de base.
Scrape interval Réglez ce paramètre sur l'intervalle de raclage et d'évaluation habituels configurés dans Prometheus. La valeur par défaut est 15 s.
Disable metrics lookup Si vous cochez cette option, le sélecteur de mesures et la prise en charge des indicateurs et des étiquettes seront désactivés dans la saisie semi-automatique du champ de requête. Cela est utile si vous rencontrez des problèmes de performances avec des instances Prometheus plus volumineuses.
Custom Query Parameters Ajoutez des paramètres personnalisés à l'URL de requête Prometheus. Par exemple timeoutpartial_response,dedup, oumax_source_resolution. Les paramètres multiples doivent être concaténés avec un « & ».

Éditeur de requêtes Prometheus

Les sections suivantes fournissent des informations et des options pour l'éditeur de requêtes Prometheus dans le tableau de bord et dans Explore.

Éditeur de requêtes dans les tableaux de bord

Ouvrez un graphique en mode édition en choisissant le titre, puis en choisissant Modifier (ou en appuyant sur la touche E tout en faisant une pause sur le panneau).

Name (Nom) Description
Query expression Pour plus d'informations sur les expressions de requête Prometheus, consultez la documentation Prometheus.
Legend format Contrôle le nom de la série chronologique à l'aide d'un nom ou d'un modèle. Par exemple, {{hostname}} est remplacé par la valeur de l'étiquettehostname.
Min step Une limite inférieure supplémentaire pour le stepparamètre des requêtes de plage Prometheus et pour $__interval les variables et. $__rate_interval La limite est absolue et n'est pas modifiée par le paramètre Résolution.
Resolution 1/1définit à la fois la $__interval variable et le stepparamètre des requêtes de plage de Prometheus de telle sorte que chaque pixel corresponde à un point de données. Pour de meilleures performances, utilisez des résolutions plus basses. 1/2récupère uniquement un point de données pour un pixel sur deux, et 1/10 récupère un point de données pour 10 pixels. Notez que l'intervalle de temps minimal et le pas minimal limitent la valeur finale de $__interval etstep.
Metric lookup Recherchez des noms de métriques dans ce champ de saisie.
Format as Basculez entre TableTime series, ouHeatmap. Tablefonctionne uniquement dans le panneau de table. Heatmapconvient à l'affichage de mesures de type histogramme sur un panneau de cartes thermiques. Il convertit les histogrammes cumulés en histogrammes réguliers et trie les séries en fonction de la limite du compartiment.
Instant Effectuez une requête « instantanée » pour renvoyer uniquement la dernière valeur que Prometheus a récupérée pour la série chronologique demandée. Les requêtes instantanées renvoient des résultats beaucoup plus rapidement que les requêtes par plage normales. Utilisez-les pour rechercher des ensembles d'étiquettes.
Min time interval Cette valeur multipliée par le dénominateur du paramètre Résolution définit une limite inférieure à la fois à la $__interval variable et au stepparamètre des requêtes de plage Prometheus. La valeur par défaut est l'intervalle Scrape tel que défini dans les options de la source de données.
Note

Amazon Managed Grafana modifie les dates de demande des requêtes afin de les aligner sur l'étape calculée dynamiquement. Cela garantit un affichage cohérent des données métriques, mais cela peut entraîner un petit écart de données sur le bord droit d'un graphique.

Requêtes instantanées dans les tableaux de bord

La source de données Prometheus vous permet d'exécuter des requêtes instantanées, qui ne demandent que la dernière valeur. Vous pouvez visualiser les résultats dans un tableau pour voir tous les libellés disponibles d'une série chronologique.

Les résultats des requêtes instantanées sont composés d'un seul point de données par série. Ils peuvent être affichés dans le panneau graphique à l'aide de remplacements de séries. Pour les afficher dans le graphique sous la forme du dernier point de valeur, ajoutez une substitution de série et sélectionnezPoints > true. Pour afficher une ligne horizontale sur l'ensemble du graphique, ajoutez une dérogation de série et sélectionnez Transform > constant Pour plus d'informations sur les remplacements de séries, voir. Dérogations de séries

Éditeur de requêtes dans Explore

Name (Nom) Description
Query expression Pour plus d'informations sur l'expression de requête Prometheus, consultez la documentation Prometheus.
Step Stepparamètre des requêtes de plage Prometheus. Les unités de temps peuvent être utilisées ici, par exemple : 5s, 1m, 3h, 1d, 1y. L'unité par défaut si aucune unité n'est spécifiée est s (secondes).
Query type Range, Instant, ou Both. Lors de l'exécution de la requête Range, le résultat de la requête est affiché sous forme de graphique et de tableau. La requête instantanée renvoie uniquement la dernière valeur que Prometheus a récupérée pour la série chronologique demandée et elle est affichée dans le tableau. Lorsque les deux sont sélectionnés, la requête instantanée et la requête par plage sont exécutées. Le résultat de la requête de plage est affiché dans le graphique et le résultat de la requête instantanée est affiché dans le tableau.

Navigateur de métriques

Le navigateur de métriques vous permet de trouver rapidement des métriques et de sélectionner des libellés pertinents pour créer des requêtes de base. Lorsque vous ouvrez le navigateur, vous verrez toutes les métriques et étiquettes disponibles. Si votre instance Prometheus est prise en charge, chaque métrique affichera ses informations HELP et TYPE sous forme d'infobulle.

Lorsque vous sélectionnez une métrique, le navigateur réduit les libellés disponibles pour n'afficher que ceux applicables à la métrique. Vous pouvez ensuite sélectionner une ou plusieurs étiquettes pour lesquelles les valeurs d'étiquette disponibles sont affichées dans les listes de la section inférieure. Sélectionnez une ou plusieurs valeurs pour chaque étiquette afin de réduire la portée de votre requête.

Note

Si vous ne vous souvenez pas du nom d'une métrique au départ, vous pouvez également sélectionner d'abord quelques libellés, pour affiner la liste, puis trouver les valeurs d'étiquette pertinentes.

Toutes les listes du navigateur de métriques sont surmontées d'un champ de recherche qui permet de filtrer rapidement les métriques ou les libellés correspondant à une chaîne donnée. La section des valeurs ne comporte qu'un seul champ de recherche. Son filtrage s'applique à toutes les étiquettes pour vous aider à trouver des valeurs parmi les étiquettes une fois qu'elles ont été sélectionnées, par exemple, parmi vos étiquettes app, job, job_name, une seule pourrait avoir la valeur que vous recherchez.

Une fois que vous êtes satisfait de votre requête, cliquez sur « Utiliser la requête » pour exécuter la requête. Le bouton Utiliser comme demande de taux ajoute un taux (...) [$__interval] autour de votre requête pour vous aider à écrire des requêtes pour les contre-métriques. Le bouton « Valider le sélecteur » permet de vérifier auprès de Prometheus combien de séries chronologiques sont disponibles pour ce sélecteur.

Limites

Le navigateur de métriques a une limite stricte de 10 000 étiquettes (clés) et 50 000 valeurs d'étiquette (y compris les noms des métriques). Si votre instance Prometheus renvoie plus de résultats, le navigateur continuera de fonctionner. Cependant, les ensembles de résultats seront coupés au-delà de ces limites maximales.

Création de modèles

Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord.

Pour plus d'informations sur les modèles et les variables de modèles, consultezModèles et variables.

Variable de requête

Variable du type Query vous permet d'interroger Prometheus pour obtenir une liste de métriques, d'étiquettes ou de valeurs d'étiquettes. Le plugin de source de données Prometheus fournit les fonctions suivantes que vous pouvez utiliser dans le champ de saisie Query.

Name (Nom) Description
label_names() Renvoie une liste de noms d'étiquettes.
label_values(label) Renvoie une liste des valeurs d'étiquette pour chaque métrique. label
label_values(metric, label) Renvoie une liste des valeurs d'étiquette pour label la métrique spécifiée.
metrics(metric) Renvoie une liste de métriques correspondant à l'expression metric régulière spécifiée.
query_result(query) Renvoie une liste des résultats de requête Prometheus pour. query

Pour plus d'informations sur les noms des métriques, les noms d'étiquettes et les valeurs d'étiquette, consultez la documentation Prometheus.

Utilisation de variables d'intervalle et de plage

Note

Support pour $__range$__range_s, et ne $__range_ms sont disponibles qu'à partir de Grafana v5.3.

Vous pouvez utiliser certaines variables globales dans les variables de requête : $__interval$__interval_ms,$__range,$__range_s, et$__range_ms. Pour plus d’informations, consultez Variables globales. Ils peuvent être pratiques à utiliser avec la query_result fonction lorsque vous devez filtrer des requêtes variables car la label_values fonction ne prend pas en charge les requêtes.

Pour obtenir les bonnes instances lorsque vous modifiez la plage de temps sur le tableau de bord, assurez-vous de définir le refresh déclencheur de la variable surOn Time Range Change.

L'exemple de code suivant montre comment renseigner une variable avec les cinq instances de demande les plus fréquentées sur la base du QPS moyen sur la période indiquée dans le tableau de bord.

Query: query_result(topk(5, sum(rate(http_requests_total[$__range])) by (instance))) Regex: /"([^"]+)"/

L'exemple de code suivant montre comment renseigner une variable avec les instances ayant un certain état sur la plage de temps indiquée dans le tableau de bord, en utilisant$__range_s.

Query: query_result(max_over_time(<metric>[${__range_s}s]) != <state>) Regex:

Utilisation d'$__rate_intervalune variable

La $__rate_interval variable est destinée à être utilisée dans la fonction de taux. Il est défini comme max ($__interval+ intervalle Scrape, 4 * intervalle Scrape). L'intervalle Scrape est le paramètre Min step (alias query_interval, un paramètre par requête ProMQL), le cas échéant, et sinon l'intervalle Scrape tel que défini dans la source de données Prometheus (mais en ignorant tout paramètre d'intervalle minimum dans le panneau, car ce dernier est modifié par le paramètre de résolution).

Utilisation de variables dans les requêtes

Il existe deux syntaxes :

  • $<varname>Exemple : rate (http_requests_total {job=~"$job "} [5m])

  • [[varname]]Exemple : rate (http_requests_total {job=~ "[[job]]"} [5m])

Pourquoi de deux manières ? La première syntaxe est plus facile à lire et à écrire mais ne permet pas d'utiliser une variable au milieu d'un mot. Lorsque les options Multi-valeurs ou Inclure toutes les valeurs sont activées, Grafana convertit les étiquettes du texte brut en une chaîne compatible avec les regex. Ce qui signifie que vous devez utiliser =~ au lieu de=.

Annotations

Vous pouvez utiliser des annotations pour superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation à l'aide du menu Tableau de bord ou de la vue Annotations. Pour plus d’informations, consultez Annotations.

Prometheus propose deux méthodes pour interroger les annotations.

L'option step est utile pour limiter le nombre d'événements renvoyés par votre requête.