Transformez les données - 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.

Transformez les données

Cette rubrique de documentation est conçue pour les espaces de travail Grafana compatibles avec la version 9.x de Grafana.

Pour les espaces de travail Grafana compatibles avec la version 10.x de Grafana, voir. Travailler dans la version 10 de Grafana

Pour les espaces de travail Grafana compatibles avec la version 8.x de Grafana, voir. Travailler dans la version 8 de Grafana

Les transformations constituent un moyen puissant de manipuler les données renvoyées par une requête avant que le système n'applique une visualisation. À l'aide de transformations, vous pouvez :

  • Renommer les champs

  • Joindre les données de séries chronologiques

  • Effectuer des opérations mathématiques sur plusieurs requêtes

  • Utiliser le résultat d'une transformation comme entrée d'une autre transformation

Pour les utilisateurs qui s'appuient sur plusieurs vues du même jeu de données, les transformations constituent une méthode efficace pour créer et gérer de nombreux tableaux de bord.

Vous pouvez également utiliser le résultat d'une transformation comme entrée d'une autre transformation, ce qui se traduit par un gain de performance.

Note

Parfois, le système ne peut pas représenter graphiquement les données transformées. Dans ce cas, cliquez sur le bouton Vue tabulaire au-dessus de la visualisation pour passer à une vue tabulaire des données. Cela peut vous aider à comprendre le résultat final de vos transformations.

Types de transformation

Grafana propose un certain nombre de méthodes pour transformer les données. Vous trouverez ci-dessous une liste complète des fonctions de transformation.

Ordre des transformations

Lorsqu'il y a plusieurs transformations, Grafana les applique dans l'ordre dans lequel elles sont répertoriées. Chaque transformation crée un jeu de résultats qui est ensuite transmis à la transformation suivante dans le pipeline de traitement.

L'ordre dans lequel Grafana applique les transformations a un impact direct sur les résultats. Par exemple, si vous utilisez une transformation Reduce pour condenser tous les résultats d'une colonne en une seule valeur, vous ne pouvez appliquer des transformations qu'à cette valeur unique.

Ajouter une fonction de transformation aux données

Les étapes suivantes vous indiquent comment ajouter une transformation aux données.

Pour ajouter une transformation à un panneau
  1. Accédez au panneau dans lequel vous souhaitez ajouter une ou plusieurs transformations.

  2. Choisissez le titre du panneau, puis cliquez sur Modifier.

  3. Choisissez l'onglet Transformation.

  4. Choisissez une transformation. Une ligne de transformation apparaît dans laquelle vous configurez les options de transformation.

  5. Pour appliquer une autre transformation, choisissez Ajouter une transformation. Cette transformation agit sur le jeu de résultats renvoyé par la transformation précédente.

Déboguer une transformation

Pour voir les ensembles de résultats d'entrée et de sortie de la transformation, cliquez sur l'icône de bogue sur le côté droit de la ligne de transformation.

Les ensembles de résultats en entrée et en sortie peuvent vous aider à déboguer une transformation.

Supprimer une transformation

Nous vous recommandons de supprimer les transformations dont vous n'avez pas besoin. Lorsque vous supprimez une transformation, vous supprimez les données de la visualisation.

Prérequis :

Identifiez tous les tableaux de bord qui reposent sur la transformation et informez les utilisateurs des tableaux de bord concernés.

Pour supprimer une transformation
  1. Ouvrez un panneau pour le modifier.

  2. Choisissez l'onglet Transformation.

  3. Cliquez sur l'icône de corbeille à côté de la transformation que vous souhaitez supprimer.

Fonctions de transformation

Vous pouvez effectuer les transformations suivantes sur vos données.

Ajouter un champ à partir du calcul

Utilisez cette transformation pour ajouter un nouveau champ calculé à partir de deux autres champs. Chaque transformation permet d'ajouter un nouveau champ.

  • Mode - Sélectionnez un mode :

    • Réduire la ligne — Appliquez le calcul sélectionné sur chaque ligne des champs sélectionnés indépendamment.

    • Option binaire — Appliquez des opérations mathématiques de base (somme, multiplication, etc.) sur les valeurs d'une seule ligne à partir de deux champs sélectionnés.

  • Nom du champ — Sélectionnez les noms des champs que vous souhaitez utiliser dans le calcul du nouveau champ.

  • Calcul : si vous sélectionnez le mode Réduire les lignes, le champ Calcul apparaît. Cliquez dans le champ pour voir la liste des choix de calcul que vous pouvez utiliser pour créer le nouveau champ. Pour plus d'informations sur les calculs disponibles, reportez-vous à la section Types de calculs.

  • Fonctionnement — Si vous sélectionnez le mode option binaire, les champs Opération apparaissent. Ces champs vous permettent d'effectuer des opérations mathématiques de base sur les valeurs d'une seule ligne à partir de deux champs sélectionnés. Vous pouvez également utiliser des valeurs numériques pour les opérations binaires.

  • Alias — (Facultatif) Entrez le nom de votre nouveau champ. Si vous laissez ce champ vide, le nom du champ correspondra au calcul.

  • Remplacer tous les champs — (Facultatif) Sélectionnez cette option si vous souhaitez masquer tous les autres champs et afficher uniquement votre champ calculé dans la visualisation.

Concaténer des champs

Cette transformation combine tous les champs de tous les cadres en un seul résultat. Tenez compte de ces deux requêtes.

Requête A :

Temp Disponibilité

15,4

1230233

Requête B :

IQA Erreurs

3.2

5

Après avoir concaténé les champs, le bloc de données serait le suivant :

Temp Disponibilité IQA Erreurs

15,4

1230233

3.2

5

Config à partir des résultats de la requête

Cette transformation vous permet de sélectionner une requête et d'en extraire des options standard telles que Min, Max, Unit et Thresholds et de les appliquer à d'autres résultats de requête. Cela permet une configuration de visualisation dynamique basée sur des requêtes.

Si vous souhaitez extraire une configuration unique pour chaque ligne du résultat de la requête de configuration, essayez de transformer les lignes en champs.

Options

  • Requête de configuration : sélectionnez la requête qui renvoie les données que vous souhaitez utiliser comme configuration.

  • Appliquer à : sélectionnez les champs ou séries auxquels appliquer la configuration.

  • Appliquer aux options : il s'agit généralement d'un type de champ ou d'un nom de champ regex, selon l'option que vous avez sélectionnée dans Appliquer à.

Convertir le type de champ

Cette transformation modifie le type de champ du champ spécifié.

  • Champ — Sélectionnez parmi les champs disponibles

  • as — Sélectionnez le FieldType à convertir en

    • Numérique : tente de convertir les valeurs en nombres

    • Chaîne — transformera les valeurs en chaînes

    • Heure : tente d'analyser les valeurs en fonction du temps

      • Affiche une option permettant de spécifier a DateFormat comme entrée par une chaîne comme yyyy-mm-dd ou DD MM YYYY hh:mm:ss

    • Boolean — rendra les valeurs booléennes

Par exemple, la requête suivante peut être modifiée en sélectionnant le champ horaire, comme Heure, et le format de date comme YYYY.

Heure Mark Valeur

01/07/2017

ci-dessus

25

02/08/2018

ci-dessous

22

02/09/2019

ci-dessous

29

04/10/2020

ci-dessus

22

Le résultat :

Heure Mark Valeur

01/01/2017

ci-dessus

25

01/01/2018

ci-dessous

22

01/01/2019

ci-dessous

29

01/01/2020

ci-dessus

22

Filtrer les données par nom

Utilisez cette transformation pour supprimer des parties des résultats de la requête.

Grafana affiche le champ Identifiant, suivi des champs renvoyés par votre requête.

Vous pouvez appliquer des filtres de deux manières :

  • Entrez une expression regex.

  • Choisissez un champ pour activer le filtrage sur ce champ. Les champs filtrés sont affichés avec du texte gris foncé, tandis que les champs non filtrés sont affichés avec du texte blanc.

Filtrer les données par requête

Utilisez cette transformation dans les panneaux contenant plusieurs requêtes, si vous souhaitez masquer une ou plusieurs requêtes.

Grafana affiche les lettres d'identification de la requête en texte gris foncé. Cliquez sur un identifiant de requête pour activer le filtrage. Si la lettre de requête est blanche, les résultats sont affichés. Si la lettre de requête est foncée, les résultats sont masqués.

Note

Cette transformation n'est pas disponible pour Graphite car cette source de données ne permet pas de corréler les données renvoyées avec les requêtes.

Filtrer les données par valeur

Cette transformation vous permet de filtrer vos données directement dans Grafana et de supprimer certains points de données du résultat de votre requête. Vous avez la possibilité d'inclure ou d'exclure les données qui répondent à une ou plusieurs conditions que vous définissez. Les conditions sont appliquées à un champ sélectionné.

Cette transformation est utile si votre source de données ne filtre pas nativement par valeurs. Vous pouvez également l'utiliser pour affiner les valeurs à afficher si vous utilisez une requête partagée.

Les conditions disponibles pour tous les champs sont les suivantes :

  • Regex — Correspond à une expression regex

  • Is Null — Correspond si la valeur est nulle

  • N'est pas nulle — Correspond si la valeur n'est pas nulle

  • Égal — Correspond si la valeur est égale à la valeur spécifiée

  • Différent : correspond si la valeur est différente de la valeur spécifiée

Les conditions disponibles pour les champs numériques sont les suivantes :

  • Plus grand — Correspond si la valeur est supérieure à la valeur spécifiée

  • Inférieur — Correspond si la valeur est inférieure à la valeur spécifiée

  • Supérieur ou égal — Correspond si la valeur est supérieure ou égale

  • Inférieur ou égal — Correspond si la valeur est inférieure ou égale

  • Plage : correspond à une plage comprise entre un minimum et un maximum spécifiés, les valeurs minimale et maximale incluses

Tenez compte de l'ensemble de données suivant :

Heure Température Altitude

07/07/2020 11 H 34 MIN 23 S

32

101

07/07/2020 11 H 34 MIN 22 S

28

125

07/07/2020 11 H 34 MIN 21 H

26

110

07/07/2020 11 H 34 MIN 20 S

23

98

07/07/2020 10 H 32 MIN 24 H

31

95

07/07/2020 10 H 31 H 22

20

85

07/07/2020 9 H 30 : 57

19

101

Si vous incluez les points de données dont la température est inférieure à 30 °C, la configuration se présentera comme suit :

  • Type de filtreInclude

  • Condition — Lignes où il y a des Temperature correspondances Lower Than 30

Et vous obtiendrez le résultat suivant, où seules les températures inférieures à 30 °C sont incluses :

Heure Température Altitude

07/07/2020 11 H 34 MIN 22 S

28

125

07/07/2020 11 H 34 MIN 21 H

26

110

07/07/2020 11 H 34 MIN 20 S

23

98

07/07/2020 10 H 31 H 22

20

85

07/07/2020 9 H 30 : 57

19

101

Vous pouvez ajouter plusieurs conditions au filtre. Par exemple, vous souhaiterez peut-être inclure les données uniquement si l'altitude est supérieure à 100. Pour ce faire, ajoutez cette condition à la configuration suivante :

  • Type de filtre : Include lignes qui Match All conditionnent

  • Condition 1 — Lignes dont les Temperature valeurs correspondent Lower à 30

  • Condition 2 — Lignes dont les Altitude valeurs correspondent Greater à 100

Lorsque vous avez plusieurs conditions, vous pouvez choisir si vous souhaitez que l'action (inclure/exclure) soit appliquée aux lignes qui correspondent à toutes les conditions ou à l'une des conditions que vous avez ajoutées.

Dans l'exemple ci-dessus, nous avons choisi Match all parce que nous voulions inclure les lignes dont la température est inférieure à 30 ET dont l'altitude est supérieure à 100. Si nous voulions plutôt inclure les lignes dont la température est inférieure à 30 OU dont l'altitude est supérieure à 100, nous sélectionnerions Match any. Cela inclurait la première ligne des données d'origine, qui a une température de 32 °C (ne correspond pas à la première condition) mais une altitude de 101 (ce qui correspond à la deuxième condition), elle est donc incluse.

Les conditions non valides ou incomplètement configurées sont ignorées.

Regrouper par

Cette transformation regroupe les données selon une valeur de champ (colonne) spécifiée et traite les calculs pour chaque groupe. Cliquez pour voir la liste des options de calcul.

Voici un exemple de données d'origine.

Heure ID serveur Température du processeur État du serveur

07/07/2020 11 H 34 MIN 20 S

serveur 1

80

Fermeture

07/07/2020 11 H 34 MIN 20 S

serveur 3

62

OK

07/07/2020 10 H 32 MIN 20 S

serveur 2

90

Surcharge

07/07/2020 10 H 31 H 22

serveur 3

55

OK

07/07/2020 9 H 30 : 57

serveur 3

62

Rebooting

07/07/2020 9 H 30 : 05

serveur 2

88

OK

07/07/2020 9 H 28 : 06

serveur 1

80

OK

07/07/2020 9 H 25 MIN 05 S

serveur 2

88

OK

07/07/2020 9 H 23 H 07

serveur 1

86

OK

Cette transformation s'effectue en deux étapes. Vous devez d'abord spécifier un ou plusieurs champs pour regrouper les données. Cela regroupera les mêmes valeurs de ces champs, comme si vous les aviez triées. Par exemple, si nous groupons par le champ ID du serveur, les données seront regroupées de la façon suivante :

Heure ID serveur Température du processeur État du serveur

07/07/2020 11 H 34 MIN 20 S

serveur 1

80

Fermeture

07/07/2020 9 H 28 : 06

serveur 1

80

OK

07/07/2020 9 H 23 H 07

serveur 1

86

OK

07/07/2020 10 H 32 MIN 20 S

serveur 2

90

Surcharge

07/07/2020 9 H 30 : 05

serveur 2

88

OK

07/07/2020 9 H 25 MIN 05 S

serveur 2

88

OK

07/07/2020 11 H 34 MIN 20 S

serveur 3

62

OK

07/07/2020 10 H 31 H 22

serveur 3

55

OK

07/07/2020 9 H 30 : 57

serveur 3

62

Rebooting

Toutes les lignes ayant la même valeur d'ID de serveur sont regroupées.

Après avoir choisi le champ par lequel vous souhaitez regrouper vos données, vous pouvez ajouter différents calculs sur les autres champs et appliquer le calcul à chaque groupe de lignes. Par exemple, nous pourrions vouloir calculer la température moyenne du processeur pour chacun de ces serveurs. Nous pouvons donc ajouter le calcul moyen appliqué au champ Température du processeur pour obtenir ce qui suit :

ID serveur Température du processeur (moyenne)

serveur 1

82

serveur 2

88,6

serveur 3

59,6

Et nous pouvons ajouter plusieurs calculs. Par exemple :

  • Pour le champ Time, nous pouvons calculer la dernière valeur, afin de savoir quand le dernier point de données a été reçu pour chaque serveur

  • Pour le champ État du serveur, nous pouvons calculer la dernière valeur pour savoir quelle est la dernière valeur d'état pour chaque serveur

  • Pour la température du terrain, nous pouvons également calculer la dernière valeur pour savoir quelle est la dernière température surveillée pour chaque serveur

Nous obtiendrions alors :

ID serveur Température du processeur (moyenne) Température du processeur (dernière) Heure (dernière) État du serveur (dernier)

serveur 1

82

80

07/07/2020 11 H 34 MIN 20 S

Fermeture

serveur 2

88,6

90

07/07/2020 10 H 32 MIN 20 S

Surcharge

serveur 3

59,6

62

07/07/2020 11 H 34 MIN 20 S

OK

Cette transformation vous permet d'extraire des informations clés de vos séries chronologiques et de les afficher de manière pratique.

Inscrivez-vous par domaine

Utilisez cette transformation pour joindre plusieurs résultats dans un seul tableau. Cela est particulièrement utile pour convertir plusieurs résultats de séries chronologiques en une seule table large avec un champ horaire partagé.

Jointure intérieure

Une jointure interne fusionne les données de plusieurs tables où toutes les tables partagent la même valeur que le champ sélectionné. Ce type de jointure exclut les données dont les valeurs ne correspondent pas dans tous les résultats.

Utilisez cette transformation pour combiner les résultats de plusieurs requêtes (combinaison sur un champ de jointure passé ou sur la première colonne chronologique) en un seul résultat, et supprimez les lignes où une jointure réussie ne peut pas avoir lieu.

Dans l'exemple suivant, deux requêtes renvoient des données de table. Il est visualisé sous la forme de deux tables distinctes avant d'appliquer la transformation de jointure interne.

Requête A :

Heure Tâche Disponibilité

07/07/2020 11 H 34 MIN 20 S

nœud

25260122

07/07/2020 11 H 24 H 20

postgre

123001233

07/07/2020 11 H 14 H 20

postgre

345001233

Requête B :

Heure Serveur Erreurs

07/07/2020 11 H 34 MIN 20 S

serveur 1

15

07/07/2020 11 H 24 H 20

serveur 2

5

07/07/2020 11 H 04 : 20

serveur 3

10

Le résultat obtenu après l'application de la transformation de jointure interne est le suivant :

Heure Tâche Disponibilité Serveur Erreurs

07/07/2020 11 H 34 MIN 20 S

nœud

25260122

serveur 1

15

07/07/2020 11 H 24 H 20

postgre

123001233

serveur 2

5

Jointure extérieure

Une jointure externe inclut toutes les données d'une jointure interne et les lignes dont les valeurs ne correspondent pas dans toutes les entrées. Alors que la jointure interne joint la requête A et la requête B dans le champ temporel, la jointure externe inclut toutes les lignes qui ne correspondent pas dans le champ temporel.

Dans l'exemple suivant, deux requêtes renvoient des données de table. Il est visualisé sous la forme de deux tables avant d'appliquer la transformation de jointure externe.

Requête A :

Heure Tâche Disponibilité

07/07/2020 11 H 34 MIN 20 S

nœud

25260122

07/07/2020 11 H 24 H 20

postgre

123001233

07/07/2020 11 H 14 H 20

postgre

345001233

Requête B :

Heure Serveur Erreurs

07/07/2020 11 H 34 MIN 20 S

serveur 1

15

07/07/2020 11 H 24 H 20

serveur 2

5

07/07/2020 11 H 04 : 20

serveur 3

10

Le résultat obtenu après l'application de la transformation de jointure externe est le suivant :

Heure Tâche Disponibilité Serveur Erreurs

07/07/2020 11 H 04 : 20

serveur 3

10

07/07/2020 11 H 14 H 20

postgre

345001233

07/07/2020 11 H 34 MIN 20 S

nœud

25260122

serveur 1

15

07/07/2020 11 H 24 H 20

postgre

123001233

serveur 2

5

Étiquettes pour les champs

Cette transformation transforme les résultats des séries chronologiques qui incluent des étiquettes ou des balises en un tableau où les clés et les valeurs de chaque étiquette sont incluses dans le résultat du tableau. Les étiquettes peuvent être affichées sous forme de colonnes ou de valeurs de ligne.

Étant donné le résultat d'une requête de deux séries chronologiques :

  • Série 1 — étiquettes Server=Server A, DataCenter=EU

  • Série 2 — étiquettes Server=Server B, Datacenter=EU

En mode Colonnes, le résultat est le suivant :

Heure Serveur Centre de données Valeur

07/07/2020 11 H 34 MIN 20 S

Serveur A

UE

1

07/07/2020 11 H 34 MIN 20 S

Serveur B

UE

2

En mode « Lignes », le résultat comporte un tableau pour chaque série et affiche chaque valeur d'étiquette comme suit :

étiquette value

Serveur

Serveur A

Centre de données

UE

étiquette value

Serveur

Serveur B

Centre de données

UE

Nom du champ de valeur

Si vous avez sélectionné Serveur comme nom du champ Valeur, vous obtiendrez un champ pour chaque valeur de l'étiquette Serveur.

Heure Centre de données Serveur A Serveur B

07/07/2020 11 H 34 MIN 20 S

UE

1

2

Comportement de fusion

Le transformateur des étiquettes en champs est constitué en interne de deux transformations distinctes. Le premier agit sur des séries individuelles et extrait les étiquettes des champs. La seconde est la transformation de fusion qui réunit tous les résultats dans une seule table. La transformation de fusion essaie de joindre tous les champs correspondants. Cette étape de fusion est obligatoire et ne peut pas être désactivée.

Note

La transformation de fusion peut être utilisée seule et est décrite en détail ci-dessous.

Pour illustrer cela, voici un exemple dans lequel deux requêtes renvoient des séries chronologiques sans que les libellés ne se chevauchent.

  • Série 1 — étiquettes Server=Servera

  • Série 2 — étiquettes Datacenter=EU

Cela donnera d'abord ces deux tableaux :

Heure Serveur Valeur

07/07/2020 11 H 34 MIN 20 S

Serveur A

10

Heure Centre de données Valeur

07/07/2020 11 H 34 MIN 20 S

UE

20

Après la fusion :

Heure Serveur Valeur Centre de données

07/07/2020 11 H 34 MIN 20 S

Serveur A

10

07/07/2020 11 H 34 MIN 20 S

20

UE

Fusionner

Utilisez cette transformation pour combiner le résultat de plusieurs requêtes en un seul résultat. Cela est utile lorsque vous utilisez la visualisation du panneau de tableau. Les valeurs pouvant être fusionnées sont combinées dans la même ligne. Les valeurs peuvent être fusionnées si les champs partagés contiennent les mêmes données.

Dans l'exemple ci-dessous, nous avons deux requêtes renvoyant des données de table. Il est visualisé sous forme de deux tableaux distincts avant d'appliquer la transformation.

Requête A :

Heure Tâche Disponibilité

07/07/2020 11 H 34 MIN 20 S

nœud

25260122

07/07/2020 11 H 24 H 20

postgre

123001233

Requête B :

Heure Tâche Erreurs

07/07/2020 11 H 34 MIN 20 S

nœud

15

07/07/2020 11 H 24 H 20

postgre

5

Voici le résultat après avoir appliqué la transformation Merge :

Heure Tâche Erreurs Disponibilité

07/07/2020 11 H 34 MIN 20 S

nœud

15

25260122

07/07/2020 11 H 24 H 20

postgre

5

123001233

Organiser les champs

Utilisez cette transformation pour renommer, réorganiser ou masquer les champs renvoyés par la requête.

Note

Cette transformation ne fonctionne que dans les panneaux contenant une seule requête. Si votre panneau contient plusieurs requêtes, vous devez soit appliquer une transformation de jointure externe, soit supprimer les requêtes supplémentaires.

Grafana affiche une liste des champs renvoyés par la requête. Vous pouvez :

  • Modifiez l'ordre des champs en plaçant votre curseur sur un champ. Le curseur prend la forme d'une main, puis vous pouvez faire glisser le champ vers son nouvel emplacement.

  • Masquez ou affichez un champ en cliquant sur l'icône en forme d'œil à côté du nom du champ.

  • Renommez les champs en saisissant un nouveau nom dans la zone Renommer.

Partition par valeurs

Cette transformation permet d'éliminer le besoin d'effectuer plusieurs requêtes vers la même source de données avec des WHERE clauses différentes lors de la représentation graphique de plusieurs séries. Prenons l'exemple d'une table SQL de métriques contenant les données suivantes :

Heure Région Valeur

20/10/2022 12 H 00

ETATS-UNIS

1520

20/10/2022 12 H 00

UE

2936

20/10/2022 1 H 00

ETATS-UNIS

1327

20/10/2022 1 H 00

UE

912

Avant la version 9.3, si vous vouliez tracer une courbe de tendance rouge pour les États-Unis et une courbe bleue pour l'UE dans le même TimeSeries panneau, vous deviez probablement la diviser en deux requêtes :

SELECT Time, Value FROM metrics WHERE Time > '2022-10-20' AND Region='US' SELECT Time, Value FROM metrics WHERE Time > '2022-10-20' AND Region='EU'

Cela nécessite également que vous sachiez à l'avance quelles régions figurent réellement dans le tableau des métriques.

Avec le transformateur Partition par valeurs, vous pouvez désormais émettre une seule requête et diviser les résultats par valeurs uniques dans une ou plusieurs colonnes (fields) de votre choix. L’exemple suivant utilise Region.

SELECT Time, Region, Value FROM metrics WHERE Time > '2022-10-20'
Heure Région Valeur

20/10/2022 12 H 00

ETATS-UNIS

1520

20/10/2022 1 H 00

ETATS-UNIS

1327

Heure Région Valeur

20/10/2022 12 H 00

UE

2936

20/10/2022 1 H 00

UE

912

Réduire

La transformation Reduce applique un calcul à chaque champ du cadre et renvoie une valeur unique. Les champs temporels sont supprimés lors de l'application de cette transformation.

Tenez compte de l'entrée :

Requête A :

Heure Temp Disponibilité

07/07/2020 11 H 34 MIN 20 S

12.3

256122

07/07/2020 11 H 24 H 20

15,4

1230233

Requête B :

Heure IQA Erreurs

07/07/2020 11 H 34 MIN 20 S

6,5

15

07/07/2020 11 H 24 H 20

3.2

5

Le transformateur de réduction dispose de deux modes :

  • Série en lignes : crée une ligne pour chaque champ et une colonne pour chaque calcul.

  • Réduire les champs : conserve la structure de cadre existante, mais réduit chaque champ en une seule valeur.

Par exemple, si vous avez utilisé le premier et le dernier calcul avec une transformation de séries en lignes, le résultat serait le suivant :

Champ La première La dernière

Temp

12.3

15,4

Disponibilité

256122

1230233

IQA

6,5

3.2

Erreurs

15

5

L'option Réduire les champs avec le dernier calcul donne lieu à deux cadres, chacun comportant une ligne :

Requête A :

Temp Disponibilité

15,4

1230233

Requête B :

IQA Erreurs

3.2

5

Renommer par regex

Utilisez cette transformation pour renommer certaines parties des résultats de la requête à l'aide d'une expression régulière et d'un modèle de remplacement.

Vous pouvez spécifier une expression régulière, qui ne s'applique qu'aux correspondances, ainsi qu'un modèle de remplacement prenant en charge les références arrières. Imaginons par exemple que vous visualisez l'utilisation du processeur par hôte et que vous souhaitiez supprimer le nom de domaine. Vous pouvez définir l'expression régulière sur ([^\.]+)\..+ et le modèle de remplacement sur$1, web-01.example.com web-01 deviendrait.

Lignes vers champs

La transformation des lignes en champs convertit les lignes en champs distincts. Cela peut être utile car les champs peuvent être stylisés et configurés individuellement. Il peut également utiliser des champs supplémentaires comme sources pour la configuration dynamique des champs ou les mapper aux étiquettes des champs. Les étiquettes supplémentaires peuvent ensuite être utilisées pour définir de meilleurs noms d'affichage pour les champs résultants.

Cette transformation inclut une table de champs qui répertorie tous les champs des données renvoyées par la requête de configuration. Ce tableau vous permet de contrôler le champ qui doit être mappé à chaque propriété de configuration (option *Utiliser as**). Vous pouvez également choisir la valeur à sélectionner si les données renvoyées comportent plusieurs lignes.

Cette transformation nécessite :

  • Un champ à utiliser comme source des noms de champs.

    Par défaut, la transformation utilise le premier champ de chaîne comme source. Vous pouvez remplacer ce paramètre par défaut en sélectionnant Nom du champ dans la colonne Utiliser comme champ pour le champ que vous souhaitez utiliser à la place.

  • Un champ à utiliser comme source de valeurs.

    Par défaut, la transformation utilise le premier champ numérique comme source. Vous pouvez toutefois annuler ce paramètre par défaut en sélectionnant Valeur du champ dans la colonne Utiliser comme champ pour le champ que vous souhaitez utiliser à la place.

Utile lors de la visualisation de données dans :

  • Jauge

  • Stat

  • Graphique à secteurs

Associez des champs supplémentaires à des étiquettes

Si un champ ne correspond pas à la propriété de configuration, Grafana l'utilisera automatiquement comme source pour une étiquette sur le champ de sortie.

Exemple :

Nom DataCenter Valeur

Serveur A

ETATS-UNIS

100

Serveur B

UE

200

Sortie :

ServerA (étiquettes DataCenter : États-Unis) ServerB (étiquettes DataCenter : EU)

10

20

Les libellés supplémentaires peuvent désormais être utilisés dans le nom d'affichage des champs pour fournir des noms de champs plus complets.

Si vous souhaitez extraire la configuration d'une requête et l'appliquer à une autre, vous devez utiliser la configuration issue de la transformation des résultats de la requête.

Exemple

Entrée :

Nom Valeur Max

Serveur A

10

100

Serveur B

20

200

Serveur C

30

300

Sortie :

Serveur A (configuration : max = 100) Serveur B (configuration : max = 200) ServerC (configuration : max = 300)

10

20

30

Comme vous pouvez le constater, chaque ligne des données source devient un champ distinct. Chaque champ possède désormais également une option de configuration maximale définie. Les options telles que Min, Max, Unit et Threshold font toutes partie de la configuration des champs et, si elles sont définies de cette manière, elles seront utilisées par la visualisation au lieu des options configurées manuellement dans le volet d'options de l'éditeur de panneaux.

Préparer des séries chronologiques

Préparer la transformation des séries chronologiques est utile lorsqu'une source de données renvoie des données de séries chronologiques dans un format qui n'est pas pris en charge par le panneau que vous souhaitez utiliser.

Cette transformation vous aide à résoudre ce problème en convertissant les données de séries chronologiques du format large au format long ou inversement.

Sélectionnez l'option Série chronologique multitrame pour transformer la trame de données chronologique du format large au format long.

Sélectionnez l'option Série chronologique étendue pour transformer le bloc de données de série chronologique du format long au format large.

De la série aux rangées

Utilisez cette transformation pour combiner le résultat de plusieurs requêtes de données de séries chronologiques en un seul résultat. Cela est utile lorsque vous utilisez la visualisation du panneau de tableau.

Le résultat de cette transformation contiendra trois colonnes : heure, métrique et valeur. La colonne Métrique est ajoutée afin que vous puissiez facilement voir de quelle requête provient la métrique. Personnalisez cette valeur en définissant Label dans la requête source.

Dans l'exemple ci-dessous, deux requêtes renvoient des données de séries chronologiques. Il est visualisé sous forme de deux tableaux distincts avant d'appliquer la transformation.

Requête A :

Heure Température

07/07/2020 11 H 34 MIN 20 S

25

07/07/2020 10 H 31 H 22

22

07/07/2020 9 H 30 : 05

19

Requête B :

Heure Humidité

07/07/2020 11 H 34 MIN 20 S

24

07/07/2020 10 H 32 MIN 20 S

29

07/07/2020 9 H 30 : 57

33

Voici le résultat après avoir appliqué la transformation Série aux lignes.

Heure Métrique Valeur

07/07/2020 11 H 34 MIN 20 S

Température

25

07/07/2020 11 H 34 MIN 20 S

Humidité

22

07/07/2020 10 H 32 MIN 20 S

Humidité

29

07/07/2020 10 H 31 H 22

Température

22

07/07/2020 9 H 30 : 57

Humidité

33

07/07/2020 9 H 30 : 05

Température

19

Trier par

Cette transformation triera chaque image en fonction du champ configuré. Lorsque cette case reverse est cochée, les valeurs seront renvoyées dans l'ordre inverse.

Limite

Utilisez cette transformation pour limiter le nombre de lignes affichées.

Dans l'exemple ci-dessous, nous avons la réponse suivante provenant de la source de données :

Heure Métrique Valeur

07/07/2020 11 H 34 MIN 20 S

Température

25

07/07/2020 11 H 34 MIN 20 S

Humidité

22

07/07/2020 10 H 32 MIN 20 S

Humidité

29

07/07/2020 10 H 31 H 22

Température

22

07/07/2020 9 H 30 : 57

Humidité

33

07/07/2020 9 H 30 : 05

Température

19

Voici le résultat après avoir ajouté une transformation Limit avec une valeur de « 3 » :

Heure Métrique Valeur

07/07/2020 11 H 34 MIN 20 S

Température

25

07/07/2020 11 H 34 MIN 20 S

Humidité

22

07/07/2020 10 H 32 MIN 20 S

Humidité

29