Ce document explique comment ajouter des filtres permanents au niveau du tableau de bord. à vos tableaux de bord personnalisés. Les filtres permanents, qui vous permettent de modifier les données affichées par un tableau de bord sans avoir à modifier chaque widget, ont un état par défaut et peuvent s'appliquer à l'ensemble du tableau de bord ou uniquement à des widgets spécifiques. La barre d'outils du tableau de bord affiche chaque filtre permanent, ainsi qu'un menu qui vous permet de modifier temporairement la valeur du filtre.
Lorsque vous souhaitez définir une présentation par défaut des données d'un tableau de bord
avec des options issues du menu permettant de modifier cet affichage, et d'ajouter des filtres permanents. Pour
exemple : pour afficher les métriques de toutes les zones
pour une zone spécifique, puis créez un filtre permanent basé sur l'étiquette zone
.
Vous pouvez créer et appliquer des filtres permanents à l'aide de la console Google Cloud ou de l'API Cloud Monitoring. Ce document explique comment utiliser la console Google Cloud. Pour en savoir plus sur l'utilisation de l'API Cloud Monitoring, consultez la page Créer et gérer des tableaux de bord à l'aide de l'API : Filtres de tableau de bord.
Pour savoir comment ajouter et modifier des regroupements et des filtres temporaires, consultez la section Ajouter des filtres temporaires à un tableau de bord personnalisé.
Fonctionnement des filtres des tableaux de bord
Un filtre de tableau de bord spécifie un libellé et une valeur. Les séries temporelles affichées par le tableau de bord déterminent les libellés disponibles pour le filtrage. La prise en charge d'un filtre à l'échelle du tableau de bord par widget dépend du type de données le widget s'affiche, ainsi que sa configuration:
Pour les widgets qui affichent des données de séries temporelles, comme un graphique en courbes, les règles suivantes s'appliquent :
Si la série temporelle affichée par le widget n'est pas compatible avec le libellé d'un filtre, le filtre appliqué à l'ensemble du tableau de bord ne modifie pas les données affichées.
Par exemple, si vous ajoutez un filtre sur le libellé
instance_id
, mais qu'un graphique n'affiche pas de données avec le libelléinstance_id
sur le tableau de bord, puis le filtre ne modifie pas les données affichées.Si le widget spécifie une valeur pour une étiquette, alors le un filtre à l'échelle du tableau de bord ne modifie pas les données affichées.
Par exemple, si vous ajoutez un filtre sur le libellé
instance_id
, mais qu'un graphique du tableau de bord inclut un filtre basé sur l'étiquetteinstance_id
, puis le filtre d'ensemble du tableau de bord ne modifie pas les données affichées.Dans le cas contraire, le graphique filtre les données affichées des séries temporelles qui satisfont au filtre applicable à l'ensemble du tableau de bord.
Pour les widgets du panneau des journaux, les filtres appliqués à l'ensemble du tableau de bord basés sur un libellé de ressource mettent à jour la requête. Par exemple, si vous ajoutez le filtre à l'échelle du tableau de bord cluster_name: mycluster, la requête est mise à jour pour inclure resource.labels."cluster_name"="mycluster".
Vous pouvez ajouter plusieurs filtres appliqués à l'ensemble du tableau de bord. Ces filtres sont joints par un AND logique.
Avant de commencer
Pour obtenir les autorisations nécessaires pour ajouter ou modifier des filtres permanents à l'aide de la console Google Cloud, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Monitoring (roles/monitoring.editor
) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les rôles, consultez la section Contrôler les accès avec Identity and Access Management.
Créer un filtre permanent
Lorsque vous concevez un tableau de bord, vous pouvez identifier plusieurs façons d'afficher les données qu'il affiche. Par exemple, lorsqu'un tableau de bord affiche des métriques pour les instances de VM, vous pouvez afficher les métriques pour toutes les VM et les métriques pour les VM d'une zone spécifique. Vous pouvez créer un filtre permanent pour le libellé zone
avec la valeur par défaut définie sur toutes les zones, *
. Lorsque vous consultez le tableau de bord, vous pouvez utiliser les
du filtre zone
pour sélectionner une zone spécifique.
Vous pouvez limiter un filtre permanent à des widgets spécifiques. Imaginez un scénario dans lequel vous souhaitez obtenir une vue côte à côte des métriques pour les VM situées dans deux zones différentes. Vous créez deux collections de graphiques et un filtre pour chacune d'elles. Votre configuration par défaut répond à votre objectif initial. Toutefois, lorsque vous consultez le tableau de bord, liste vos variables et comprend des menus vous permettant de sélectionner valeurs. Vous pouvez utiliser ces menus pour afficher les données de différentes zones.
Les filtres permanents qui ne s'appliquent qu'à des widgets spécifiques sont parfois appelés variables de modèle. Après avoir créé un filtre de ce type, lorsque vous ajouter un widget à votre tableau de bord, vous pouvez également appliquer le filtre à ce widget. Pour en savoir plus, consultez la section Appliquer un filtre permanent à un widget.
Pour créer un filtre permanent, procédez comme suit :
-
Dans la console Google Cloud, accédez à la page Tableaux de bord .
Accéder à la page Tableaux de bord
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.
- Dans la barre d'outils du tableau de bord, cliquez sur settings Paramètres, puis sélectionnez Gérer les filtres.
- Cliquez sur arrow_drop_down Libellé, puis sélectionnez un libellé. Par exemple, vous pouvez sélectionner
zone
. Cliquez sur arrow_drop_down Valeur par défaut, puis sélectionnez la valeur par défaut du libellé. Pour correspondre à toutes les valeurs, sélectionnez
*
.Une fois le filtre créé, il est ajouté à la barre d'outils de votre tableau de bord. Pour modifier temporairement la valeur du filtre, sélectionnez-le, puis effectuez une sélection dans le menu.
Effectuez l'une des opérations suivantes :
Pour appliquer le filtre à tous les widgets du tableau de bord, sélectionnez Appliquer à tous, puis Appliquer.
Pour créer une variable ou appliquer le filtre à certains widgets du tableau de bord :
- Décochez Appliquer à tous.
- Dans le champ Nom de la variable, saisissez un nom à afficher pour la .
Développez le menu Appliquer aux graphiques, sélectionnez les widgets auxquels le filtre s'applique, puis sélectionnez OK.
Cliquez sur Appliquer.
Appliquer un filtre permanent à un widget
Pour appliquer un filtre permanent à un widget, vous devez associer ce widget à l'aide de la variable:
Pour les graphiques configurés à l'aide de menus, vous pouvez : effectuer cette association lors de la création ou de la modification du filtre.
Dans le panneau des journaux, modifiez le widget et configurez la requête par défaut. Assurez-vous de suivre les instructions de la section intitulée Syntaxe pour appliquer un filtre permanent.
Pour les graphiques et les tableaux définis par MQL ou PromQL, modifiez la valeur graphique ou table, puis modifiez le MQL ou PromQL. Assurez-vous de suivre les instructions de la section intitulée Syntaxe pour appliquer un filtre permanent.
Syntaxe pour appliquer un filtre permanent
L'exemple suivant montre la représentation JSON partielle d'un tableau de bord. qui définit une variable de modèle et un filtre pour l'ensemble du tableau de bord:
{ "dashboardFilters": [ { "filterType": "RESOURCE_LABEL", "labelKey": "instance_id", "stringValue": "3133577226154888113", "templateVariable": "iid" }, { "filterType": "RESOURCE_LABEL", "labelKey": "zone" } ], "displayName": "Illustrate Template Variables", ...
Dans le code JSON affiché, la première entrée de la structure dashboardFilters
correspond à une variable de modèle portant le nom iid
et à un filtre à l'échelle du tableau de bord avec la clé d'étiquette zone
. La variable de modèle est un alias du libellé instance_id
.
La structure de données d'une variable de modèle ne liste pas les widgets auxquels elle s'applique. Pour associer un widget à une variable de modèle, modifier la requête du widget pour inclure une référence à la variable. Lorsque le widget est affiché dans le tableau de bord, la valeur de la variable de modèle est résolue.
Consultez les sections suivantes pour découvrir comment annoter les panneaux et les graphiques des journaux:
- Panneau "Journaux"
- Graphiques et tableaux définis par MQL
- Graphiques et tableaux définis par PromQL
- Graphiques et tableaux définis à l'aide de filtres de séries temporelles
Panneau des journaux
Pour configurer un panneau de journaux afin de filtrer l'affichage en fonction de la valeur d'une variable de modèle, ajoutez la variable au volet de requête. L'exemple suivant illustre une requête qui filtre selon la valeur de la variable de modèle iid
:
${iid}
Avant que le panneau des journaux n'interroge les journaux à afficher, la variable de modèle
est résolu. Dans cet exemple, si la valeur de la variable de modèle
est "12345"
, alors ${iid}
est remplacé par l'instruction
resource.labels."instance_id"="12345"
Vous pouvez également n'inclure que la valeur d'une variable de modèle dans une requête. Nous vous recommandons de n'utiliser la valeur que dans le cadre d'un filtre défini avec une expression régulière. Par exemple, la requête suivante utilise une expression régulière pour faire correspondre les entrées de journal dont la charge utile JSON contient les informations chaîne:
jsonPayload.message=~"Connected to instance: ${iid.value}"
Si vous avez configuré une requête pour le panneau des journaux, puis que vous sélectionnez le bouton pour ouvrir l'explorateur de journaux, les variables de modèle sont résolues avant l'explorateur de journaux est ouvert.
Le tableau suivant montre comment la variable de modèle est résolue par la méthode Journaux:
Syntaxe | Selected Value |
Expression du panneau des journaux résolus |
---|---|---|
${iid} |
12345 |
resource.labels."instance_id"="12345" |
${iid} |
* |
"" |
${iid.value} |
12345 |
12345 |
${iid.value} |
* |
.* |
Graphiques et tableaux définis par MQL
Lorsque vous utilisez le langage MQL (Monitoring Query Language) pour configurer un graphique, ajoutez un pipeline à la chaîne de requête:
fetch gce_instance | metric 'compute.googleapis.com/instance/cpu/utilization' | every 1m | ${iid}
Avant que le graphique n'interroge la série temporelle à afficher, la variable de modèle
est résolu. Dans cet exemple, si la valeur de la variable de modèle est "12345"
, ${iid}
est remplacé par l'instruction filter (resource.instance_id == '12345')
. Ce filtre correspond aux séries temporelles associées au libellé resource.instance_id
, et uniquement lorsque la valeur de ce libellé est exactement 12345
.
Lorsque vous souhaitez filtrer des séries temporelles à l'aide d'une expression régulière, configurez la requête pour n'inclure que la valeur de la variable de modèle.
Pour illustrer la syntaxe, les éléments suivants
montre comment utiliser une expression régulière pour déterminer si la valeur de la
L'étiquette resource.instance_id
contient la valeur de la variable de modèle iid
:
fetch gce_instance | metric 'compute.googleapis.com/instance/cpu/utilization' | filter resource.instance_id=~"${iid.value}" | group_by 1m, [value_utilization_mean: mean(value.utilization)] | every 1m
Le tableau suivant montre comment la variable de modèle est résolue pour les requêtes MQL :
Syntaxe | Selected Value |
Expression MQL résolue |
---|---|---|
${iid} |
12345 |
filter (resource.instance_id == '12345') |
${iid} |
* |
filter (true) |
${iid.value} |
12345 |
12345 |
${iid.value} |
* |
.* |
Graphiques et tableaux définis par PromQL
Lorsque vous définissez un graphique à l'aide de PromQL, ajoutez à la chaîne de requête le encapsulée par des accolades:
compute_googleapis_com:instance_cpu_utilization { project_id="my-project", ${iid} }
Avant que le graphique ne demande la série temporelle à afficher, la variable de modèle est résolue. Dans cet exemple, si la valeur de la variable de modèle est "12345"
, ${iid}
est remplacé par l'instruction instance_id == '12345'
.
Comme pour MQL, lorsque vous définissez un widget avec PromQL, la requête
ne peut extraire que la valeur de la variable de modèle. Nous vous recommandons de n'utiliser cette valeur que dans le cadre d'un filtre défini à l'aide d'une expression régulière. Pour illustrer la syntaxe, l'exemple suivant montre comment utiliser une expression régulière pour déterminer si la valeur du libellé instance_id
contient la valeur de la variable de modèle iid
:
compute_googleapis_com:instance_cpu_utilization{ instance_id=~"${iid.value}" }
Le tableau suivant montre comment la variable de modèle est résolue pour PromQL requêtes:
Syntaxe | Valeur sélectionnée |
Expression PromQL résolue |
---|---|---|
${iid} |
12345 |
instance_id == '12345' |
${iid} |
* |
noop_filter=~".*" |
${iid.value} |
12345 |
12345 |
${iid.value} |
* |
.+ |
Graphiques et tables définis avec des filtres de séries temporelles
Lorsque vous définissez un graphique à l'aide de filtres de série temporelle, ajoutez la variable à la chaîne de filtre :
"filter": "metric.type=\"compute.googleapis.com/instance/cpu/utilization\" resource.type=\"gce_instance\" ${iid}"
Contrairement aux graphiques définis par MQL et PromQL, vous ne pouvez pas utiliser la valeur d'une variable de modèle dans un filtre de série temporelle.
Le tableau suivant montre comment la variable de modèle est résolue :
Syntaxe | Selected Value |
Expression de filtre résolue |
---|---|---|
${iid} |
12345 |
resource.instance_id == "12345" |
${iid} |
* |
Omission |
${iid.value} |
12345 |
Non compatible |
${iid.value} |
* |
Non compatible |
Modifier un filtre permanent
Pour modifier temporairement la valeur de n'importe quel filtre affiché dans la barre d'outils du tableau de bord, cliquez sur le nom du filtre, puis saisissez une valeur ou effectuez une sélection dans le menu.
Si votre tableau de bord contient un tableau qui affiche des données de série temporelle, vous pouvez ajouter des filtres temporaires ou modifier des filtres et des variables permanents à l'aide du bouton filter_list Filtrer le tableau de bord selon cette valeur d'une cellule. Lorsqu'il est sélectionné, ce bouton applique un nouveau filtre temporaire ou met à jour la valeur d'un filtre ou d'une variable existants. Filtres et variables existants sont mis à jour lorsque la clé d'étiquette de la colonne de la table correspond à la clé d'étiquette pour un filtre ou une variable.
Pour modifier la configuration d'un filtre permanent, procédez comme suit :
-
Dans la console Google Cloud, accédez à la page Tableaux de bord .
Accéder à la page Tableaux de bord
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.
- Dans la barre d'outils du tableau de bord, cliquez sur settings Paramètres. puis sélectionnez Gérer les filtres.
- Recherchez le filtre que vous souhaitez modifier, puis utilisez les menus pour effectuer vos modifications.
- Cliquez sur Appliquer.
Supprimer un filtre permanent
-
Dans la console Google Cloud, accédez à la page Tableaux de bord .
Accéder à la page Tableaux de bord
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.
- Dans la barre d'outils du tableau de bord, cliquez sur settings Paramètres, puis sélectionnez Gérer les filtres.
- Recherchez le filtre que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Cliquez sur Appliquer.
Étape suivante
- Explorer les données représentées graphiquement
- Accéder aux tableaux de bord spécifiques aux ressources