Les variables imbriquées vous permettent de créer des relations dynamiques et dépendantes entre les variables de vos dashboards. Cela vous permet de :
- Réutilisez les variables dashboard et modifiez dynamiquement ce qui est affiché, en particulier pour le filtrage basé sur les données d'autres variables.
- Créez des relations parent/enfant dans des variables, formant une structure arborescente dans laquelle vous pouvez sélectionner différents niveaux de filtres.
Cas d'utilisation
Imaginez que vous avez créé une variable Env
pour sélectionner un environnement (par exemple, production et simulation). Vous souhaitez mettre à jour une variable Machine
avec une liste de machines en fonction de l'environnement sélectionné. L'incorporation directe (intégration) de la variable Env dans une condition WHERE
pour Machine
n'est pas prise en charge dans une configuration standard.
Exemple:
Variable Env
=production
oustaging
Variable Machine
=SELECT uniques(machine) FROM Table WHERE env in ({{Env}})
Cette approche directe n'est pas prise en charge sans variables imbriquées. Les variables imbriquées résolvent ce problème en permettant à la requête de votre variable Machine
de référencer dynamiquement la valeur de votre variable Env
.
Comment utiliser les variables imbriquées
Pour implémenter des variables imbriquées, suivez ces étapes :
- Accédez à un dashboard que vous pouvez modifier.
- Créez votre variable parent (par exemple,
env
) en utilisant la fonctionAdd Variable
:FROM TransactionSELECT uniques(environment) - Créez une autre variable (par exemple,
variable_cluster
) et, lors de sa définition, placez{{env}}
à l'intérieur de la zone de texte :FROM TableSELECT uniques(machine)WHERE env IN ({{env}}) - Enregistrez les deux variables.
- Accédez à votre dashboard et interagissez avec les valeurs de la variable. Ils devraient changer automatiquement en fonction de la sélection de la valeur de la variable imbriquée.
Vous pouvez désormais utiliser votre variable enfant dans n’importe quel widget de votre dashboard. Lorsque votre variable_cluster
change, votre widget changera également !
Limites
Lorsque vous utilisez des variables imbriquées, tenez compte des limitations suivantes :
- Sélection de variable parent requise pour la définition de l'enfant : assurez-vous que votre variable
env
a des valeurs sélectionnées lorsque vous définissez votre variablemachine
. Sinon, la requêtemachine
ne renverra aucun résultat. - Sélection de variable requise pour l'utilisation d'un widget : assurez-vous que la variable a des valeurs sélectionnées lorsque vous l'utilisez dans le widget. Sinon, la requête du widget ne renverra aucun résultat.
- Impact de la suppression : si votre variable
env
est supprimée, votre variablemachine
peut afficher des erreurs lors du chargement. - Valeurs effacées : si les valeurs de votre variable
env
sont effacées, votre variablemachine
continuera à afficher des valeurs basées sur les sélections précédentes deenv
.