Sélectionner des métriques lors de l'utilisation de l'explorateur de métriques

L'explorateur de métriques est un outil de création de graphiques autonome qui vous permet de créer des graphiques pour toute métrique (numérique) collectée par votre projet. Cette page explique comment configurer l'explorateur de métriques à l'aide de l'onglet Configuration. Si vous utilisez le langage MQL (Monitoring Query Language), les concepts présentés sur cette page s'appliquent. Cependant, vous devez utiliser la syntaxe définie dans la page Présentation du langage MQL.

Pour en savoir plus sur la configuration du style d'un graphique, consultez la page Définir les options d'affichage.

Sélectionner les données à afficher

Pour spécifier les métriques à afficher lors de l'utilisation de l'explorateur de métriques, spécifiez des valeurs pour une métrique et un type de ressource:

  • Le champ metric identifie les mesures à collecter à partir d'une ressource surveillée. Il inclut une description de ce qui est mesuré et de la manière dont ces mesures sont interprétées. Metric est une forme courte de type de métrique. Pour obtenir des informations conceptuelles à ce sujet, consultez la section Types de métriques.

  • Le champ Resource type (Type de ressource) spécifie la ressource à partir de laquelle les données de métriques sont capturées. Le type de ressource est parfois appelé type de ressource surveillée ou ressource. Pour obtenir des informations conceptuelles, consultez la page Ressources surveillées.

Monitoring propose un grand nombre de types de métriques prédéfinis et de ressources surveillées. Vous pouvez également créer des métriques personnalisées :

Champ de spécification des métriques

Les champs Type de ressource et Métrique déterminent la métrique représentée dans le graphique. Vous pouvez remplir ces champs dans n'importe quel ordre. Les deux champs vous permettent de saisir des valeurs ou de sélectionner des entrées dans le menu:

  • Pour réduire le nombre d'options affichées dans un menu, saisissez une valeur dans la barre de filtre. Par exemple, si vous saisissez cpu, le menu ne répertorie que les entrées contenant cpu. Un test non sensible à la casse permet de déterminer si une entrée est répertoriée.

    .
  • Pour en savoir plus sur une entrée, placez le pointeur de la souris sur l'entrée afin d'activer l'info-bulle.

  • Pour saisir un filtre Monitoring, consultez la section Mode de filtrage direct.

Une fois le type de ressource et la métrique sélectionnés, le graphique affiche toutes les séries temporelles disponibles pour cette paire. La capture d'écran suivante montre un graphique après la sélection du type de ressource et de la métrique:

Affichage d'un graphique avec une métrique sélectionnée.

Ce graphique contient plus de données qu'il ne peut en afficher. La limite d'affichage est de 300 lignes. Le graphique indique qu'il y a trop de données à afficher et suggère d'utiliser le mode "Anomalies", ce qui réduit considérablement la quantité de données à afficher. Pour accéder aux commandes du mode "Anomalies", cliquez sur Paramètres. Pour en savoir plus, consultez la section Définir les options d'affichage.

Vous pouvez également utiliser les options de filtrage et d'agrégation pour réduire la quantité de données représentées. Ces techniques augmentent l'utilité des graphiques lors de diagnostics et d'analyses, ainsi que les performances et la réactivité de l'interface utilisateur en elle-même.

Mode de filtrage direct

Le mode de filtrage direct vous permet de saisir une expression utilisée par Monitoring pour identifier la série temporelle à surveiller. Les expressions que vous saisissez en mode de filtrage direct sont parfois appelées filtres de métriques ou filtres de surveillance. Voici un exemple d'expression qui permet à Monitoring d'afficher les entrées de journal de toutes les instances de machine virtuelle Google Cloud de la zone us-east1-b:

metric.type="logging.googleapis.com/log_entry_count"
resource.type="gce_instance"
resource.label."zone"="us-east1-b"

Le mode Filtre direct est utile lorsque vous souhaitez identifier la syntaxe appropriée pour un appel d'API ou pour vérifier qu'un filtre Monitoring est correctement formaté. Elle est également utile lorsque vous souhaitez représenter graphiquement des données que la ressource et le modèle de métrique ne peuvent pas représenter. Par exemple, l'expression suivante montre un graphique affichant le nombre de processus dont le nom inclut nginx:

select_process_count("monitoring.regex.full_match(\".*nginx.*\")")
resource.type="gce_instance"

Pour en savoir plus sur la syntaxe, consultez les sections Filtrer l'état des processus et Récupérer les données de SLO. Pour obtenir des informations générales, consultez la page Filtres Monitoring.

Pour saisir un filtre Monitoring, procédez comme suit:

  1. Développez le menu Type de ressource et sélectionnez Direct filter mode (Mode de filtrage direct).
  2. Saisissez une expression de filtre Monitoring dans la zone de texte.

    La zone de texte contient le type de ressource, la métrique et le paramètre de filtre que vous avez définis avant de passer au mode de filtrage direct.

    Si vous avez utilisé le mode de filtrage direct pour configurer des graphiques ou des règles d'alerte et qu'aucune donnée n'est disponible, le graphique affiche un message d'erreur. Le message d'erreur exact dépend du filtre que vous avez saisi. Par exemple, Chart definition invalid (Définition de graphique non valide) est un message courant. Le message No data is available for the selected timeframe. (Aucune donnée disponible pour la fenêtre temporelle sélectionnée) peut également s'afficher.

Pour revenir à l'interface de menu, cliquez sur Mode standard.

Filtrer les données représentées graphiquement

Vous pouvez réduire la quantité de données à représenter sous forme de graphique en spécifiant des critères de filtrage, en appliquant une agrégation ou en utilisant le mode "Anomalies". Les filtres permettent de s'assurer que seules les séries temporelles répondant à un ensemble de critères sont utilisées. Si vous appliquez des filtres, le graphique comporte moins de lignes, ce qui peut améliorer ses performances.

Si vous fournissez plusieurs critères de filtrage, le graphique correspondant n'affiche que les séries temporelles qui répondent à tous les critères, à savoir une valeur logique AND. En règle générale, vous pouvez filtrer par groupe de ressources, par nom, par libellé de ressource, par zone et par libellé de métrique.

Pour ajouter un filtre lorsque vous utilisez l'onglet MQL, spécifiez le filtre à l'aide de l'éditeur de requête.

Pour ajouter un filtre lorsque vous utilisez l'onglet Configuration, cliquez sur Ajouter un filtre, puis spécifiez le libellé de filtre, la comparaison, ainsi que la valeur ou la plage de valeurs:

  1. Cliquez sur Libellé, puis sélectionnez une entrée dans le menu.

    Pour rechercher un libellé spécifique, vous pouvez utiliser la barre de défilement ou saisir du texte dans la zone de texte Filtre . Lorsque vous saisissez du texte, le menu ne répertorie que les entrées qui contiennent le texte saisi.

    La capture d'écran suivante montre les libellés de filtrage connus d'une métrique spécifique :

    Exemple de liste de libellés de filtrage.

  2. Cliquez sur Comparison (Comparaison), puis sélectionnez une entrée dans le menu. Vous avez le choix entre quatre opérateurs : est égal à =, différent de, !=, correspondance d'expression régulière, =~ et expression régulière ne correspond pas, !=~:

    Liste des comparateurs de filtres.

  3. Cliquez sur Valeur, puis effectuez l'une des opérations suivantes :

    • Si vous avez sélectionné une comparaison directe, = ou !=, sélectionnez-la dans le menu ou saisissez une valeur, puis cliquez sur OK. Les valeurs saisies peuvent être simples, telles que us-central1-a, ou vous pouvez créer une chaîne de filtre commençant par starts_with ou ends_with. Par exemple, pour afficher les données d'une zone us-central1, vous pouvez saisir la chaîne de filtre starts_with("us-central1"). Pour plus d'informations sur les chaînes de filtre, consultez la section Filtres de surveillance.

      Comme les entrées de menu sont dérivées de la série temporelle reçue, si une ressource surveillée ne génère pas de données pour la métrique sélectionnée, vous devez saisir la valeur du libellé.

      La capture d'écran suivante montre le menu de valeurs affiché pour un projet particulier lorsque le libellé de ressource zone est sélectionné :

      Exemple de liste de libellés de filtrage.

    • Si vous avez sélectionné une comparaison d'expressions régulières, =~ ou !=~, saisissez une expression régulière RE2 dans le champ Valeur, puis cliquez sur OK. Par exemple, l'expression régulière us-central1-.* correspond à toutes les zones us-central1.

      Pour faire correspondre une zone se terminant par "a", vous pouvez utiliser l'expression régulière ^us.*.a$.

      Vous ne pouvez pas utiliser d'expressions régulières pour filtrer le libellé de ressource project_id.

      Par exemple, si vous souhaitez afficher uniquement la série temporelle de l'une des zones us-central1, appliquez un filtre zone="starts_with("us-central1")" ou zone=~"us-central1.*" :

      Affichage d'une série temporelle filtrée.

Vous pouvez spécifier plusieurs critères de filtre et utiliser le même libellé plusieurs fois. Ces fonctionnalités vous permettent de spécifier un filtre pour une plage de valeurs. Tous les critères de filtre doivent être remplis. elles constituent une valeur logique AND. Par exemple, la configuration suivante vous permet d'utiliser les chaînes de filtre starts_with et ends_with pour n'afficher que les zones "a" aux États-Unis :

Exemple utilisant plusieurs filtres.

Choisir le mode d'affichage des données représentées graphiquement

Cette section explique comment afficher les données sélectionnées en définissant des champs d'agrégation. L'agrégation consiste à aligner les points de données dans une série temporelle et à combiner différentes séries temporelles. Pour obtenir une explication détaillée de l'agrégation, consultez la page Filtrage et agrégation : manipuler des séries temporelles.

Groupe de séries temporelles

Vous pouvez réduire le volume de données renvoyées pour une métrique en combinant différentes séries temporelles. Pour combiner plusieurs séries temporelles, vous devez généralement spécifier un groupe et une fonction. Le regroupement est effectué en fonction des valeurs de libellés. La fonction définit la façon dont toutes les données de séries temporelles d'un groupe sont combinées dans une nouvelle série temporelle.

Pour ajouter un regroupement, cliquez sur le texte dans la zone de texte Group by (Grouper par), puis effectuez la sélection dans le menu. Le menu est créé de manière dynamique en fonction des données de séries temporelles correspondant à la ressource et à la métrique que vous avez sélectionnées. Le regroupement et le filtrage utilisent le même ensemble de libellés.

Lorsque vous ajoutez le premier libellé, voici ce qui se produit :

  • Un agrégateur est sélectionné. Le type de données affichées détermine l'agrégateur par défaut. Vous pouvez toutefois la modifier.
  • L'agrégateur combine les séries temporelles qui possèdent la même valeur de libellé en une seule série temporelle.
  • Le graphique affiche une série temporelle pour chaque valeur du libellé répertorié dans la zone de texte Group by (Grouper par).

Si vous effectuez un regroupement d'après plusieurs libellés, l'agrégateur combine les séries temporelles qui possèdent la même valeur pour les libellés spécifiés.

Si vous ne spécifiez pas d'option de regroupement et que vous spécifiez un agrégateur, cette fonction est appliquée à toutes les séries temporelles sélectionnées et génère une seule série temporelle.

Par exemple, si le champ Grouper par est défini sur user_labels.version et que l'agrégateur est défini sur sum, il existe une série temporelle pour chaque valeur du champ libellé user_labels.version. Les points de données de chaque série temporelle sont calculés à partir de la somme de toutes les valeurs de chaque série temporelle pour une version spécifique :

Affichage des séries temporelles regroupées par user_labels.version

Vous pouvez effectuer un regroupement d'après plusieurs étiquettes. Lorsque vous disposez de plusieurs options de regroupement, l'agrégateur est appliqué à l'ensemble de séries temporelles ayant les mêmes valeurs pour les libellés sélectionnés.

Le graphique obtenu affiche une série temporelle pour chaque combinaison de valeurs de libellé. L'ordre dans lequel vous spécifiez les libellés n'a pas d'importance.

Par exemple, la capture d'écran suivante montre un regroupement par user_labels.version et system_labels.machine_image :

Affichage des séries temporelles regroupées par version et image de machine.

Comme illustré, si vous regroupez par libellé, vous obtenez une série temporelle pour chaque paire de valeurs. Le fait d'obtenir une série temporelle pour chaque combinaison de libellés implique que cette technique a facilement tendance à créer plus de données qu'il n'est utile d'en afficher sur un seul graphique.

Si vous spécifiez un regroupement ou si vous sélectionnez un agrégateur, la série temporelle représentée sur le graphique ne contient que les libellés requis, tels que l'identifiant du projet, et les libellés spécifiés par le regroupement.

Supprimer des conditions de regroupement

Pour supprimer une condition de regroupement, procédez comme suit :

  1. Supprimez les libellés de regroupement.
  2. Définissez l'agrégateur sur none.

Aligner la série temporelle

L'alignement est le processus de conversion des données de séries temporelles reçues par Monitoring en une nouvelle série temporelle comportant des points de données à intervalles fixes. Le processus d'alignement consiste à collecter tous les points de données reçus dans un délai fixe, appliquer une fonction pour combiner ces points de données et attribuer un horodatage au résultat. Cette fonction de combinaison peut calculer la moyenne de tous les échantillons ou peut extraire le maximum de tous les échantillons.

La durée d'alignement spécifie l'intervalle de temps minimal à utiliser lors de l'alignement des données de séries temporelles. Lorsque de trop nombreux points de données doivent être représentés sur le graphique pendant la période d'affichage sélectionnée, la période d'alignement est automatiquement augmentée pour que chaque point de données soit représenté. Le paramètre par défaut de ce champ est 1 minute.

Prenons l'exemple d'une métrique dont la période d'échantillonnage est d'une minute. Si un graphique est configuré pour afficher une heure de données, il peut afficher les 60 points de données. Si la période d'alignement est définie sur 10 minutes, le graphique affiche six points de données. Toutefois, si vous configurez le graphique pour qu'il affiche une semaine de données, le nombre de points à afficher est trop élevé. Par conséquent, la période est automatiquement modifiée. Dans cet exemple, la période d'alignement modifiée est d'une heure.

Le champ Aligner (Aligneur) spécifie la fonction utilisée pour combiner tous les points de données d'une période d'alignement. La plupart des aligneurs effectuent des opérations mathématiques courantes. Par exemple, si vous sélectionnez min, le point de données aligné correspond au minimum de tous les points de données pendant la période d'alignement. Certains aligneurs réalisent des opérations plus complexes :

  • next-older : pour conserver uniquement l'échantillon le plus récent au sein d'une période d'alignement, utilisez l'aligneur next-older. Cet aligneur est couramment utilisé avec les tests de disponibilité et représente un bon choix lorsque vous vous intéressez uniquement à la valeur la plus récente.

    Cet aligneur n'est valide que pour les métriques de jauge.

  • percentile : pour afficher une métrique de distribution sur un graphique en courbes, en aires empilées ou à barres empilées, vous devez sélectionner le centile de la distribution à afficher. Pour spécifier ce centile, vous pouvez sélectionner un aligneur de type "percentile". Vous pouvez choisir parmi les 5e, 50e, 95e et 99e centiles. Le point de données aligné est déterminé en calculant le centile spécifié en utilisant tous les points de données de la période d'alignement.

    Cet aligneur n'est valide que pour les métriques de jauge et les métriques delta lorsqu'elles possèdent un type de données de distribution.

  • delta : utilisez cet aligneur pour convertir une métrique cumulative ou une métrique delta en métrique delta avec un échantillon par période d'alignement. Cet aligneur peut entraîner l'interpolation des données. Pour obtenir un exemple, consultez la section Genres, types et conversions.

    Cet aligneur n'est valide que pour les métriques cumulatives et les métriques delta.

  • rate : utilisez cet aligneur pour convertir une métrique cumulative ou delta en métrique de jauge. Si vous choisissez cet aligneur, vous pouvez considérer que la série temporelle est transformée de la même manière qu'avec un aligneur delta, puis divisée par la période d'alignement. Par exemple, si l'unité de la série temporelle d'origine est Mio et que l'unité de la période d'alignement est la seconde, le graphique présente une unité de Mio/seconde. Pour en savoir plus, consultez la section Genres, types et conversions.

    Cet aligneur n'est valide que pour les métriques cumulatives et les métriques delta.

Pour en savoir plus sur les aligneurs disponibles, consultez la section Aligner dans la documentation de référence de l'API.

Pour afficher ou modifier la fonction d'alignement, cliquez sur Afficher les options avancées.

La capture d'écran suivante illustre l'utilisation du processeur par les instances de VM Compute Engine dans un projet Google Cloud particulier. Dans cette image, les champs d'alignement possèdent des valeurs par défaut : la fonction d'alignement est définie sur mean et la période d'alignement sur 1 minute :

Utilisation du processeur par les instances de VM en utilisant les paramètres d'alignement par défaut.

À des fins de comparaison, la capture d'écran suivante montre les effets du passage de la période 1 minute à 5 minutes :

Utilisation du processeur par les instances de VM en utilisant les paramètres par défaut avec une période d'alignement de cinq minutes

En augmentant la période, le graphique obtenu comporte moins de points, passant de 60 à 10 points par série temporelle. Chaque point du graphique est calculé en faisant la moyenne des points de la série temporelle au cours d'une période d'alignement. À mesure que la période d'alignement augmente, la moyenne des points supplémentaires est calculée, ce qui a un effet lissé sur les données tracées.

Agrégation secondaire

Lorsque vous disposez de plusieurs séries temporelles représentant déjà des agrégations, vous pouvez réduire toutes les séries temporelles du graphique à une seule série en choisissant un agrégateur secondaire. Par exemple, si vous regroupez des données par zone, votre graphique affiche une série temporelle pour chaque zone. Pour créer un graphique contenant une seule série temporelle, utilisez les champs d'agrégation secondaires.

Pour afficher ou modifier les paramètres d'agrégation secondaire, cliquez sur Afficher les options avancées.

La capture d'écran ci-dessous montre plusieurs séries temporelles résultant du regroupement d'un ensemble filtré de données. L'utilisation du regroupement requiert une agrégation. Chaque groupe de lignes est agrégé en une seule ligne. Dans la capture d'écran, les séries temporelles sont regroupées par zone.

Affichage d'une série temporelle filtrée et regroupée par zone.

La capture d'écran ci-dessous montre le résultat de l'utilisation de l'agrégation secondaire pour la recherche de la valeur moyenne de séries temporelles regroupées.

Affichage d'une agrégation secondaire appliquée à l'exemple précédent.

Modèle de légende

Le champ Legend Template (Modèle de légende) vous permet de personnaliser une description de série temporelle sur votre graphique. Cette description apparaît sur la fiche informative du graphique et dans la légende figurant dans la colonne Nom. Par défaut, les descriptions dans la légende sont créées automatiquement à partir des valeurs des différents libellés de votre série temporelle. Étant donné que le système sélectionne les libellés, les résultats peuvent ne pas vous être utiles. Ce champ vous permet de créer un modèle pour les descriptions.

Pour accéder au modèle de légende d'un graphique, dans Cloud Console, sélectionnez l'onglet Avancé dans le volet de configuration du graphique. Le modèle de la légende est répertorié dans la section Options supplémentaires.

Vous pouvez saisir du texte brut et des modèles dans le champ Modèle de légende. Lorsque vous ajoutez un modèle, vous ajoutez une expression qui est évaluée lorsque la légende est affichée.

Pour ajouter un modèle, procédez comme suit :

  • Cliquez sur Insert a template (Insérer un modèle).
  • Sélectionnez une entrée dans le menu. Une fois que vous avez sélectionné une entrée, un modèle est automatiquement ajouté. Par exemple, si vous sélectionnez response_code, le modèle ${resource.labels.zone} est ajouté.

Par exemple, la capture d'écran suivante montre un modèle de légende contenant du texte brut et l'expression ${resource.labels.zone} :

Modèle correspondant à une description simple.

Dans la légende du graphique, les valeurs générées à partir du modèle apparaissent dans une colonne avec l'en-tête Nom et dans la fiche informative :

Descriptions générées à partir d'un modèle.

Vous pouvez configurer le modèle de légende pour inclure plusieurs chaînes de texte et modèles. Toutefois, l'espace disponible pour l'affichage sur la fiche informative est limité.

Étape suivante