Ce document explique comment utiliser la console Google Cloud pour créer une règle d'alerte basée sur les métriques qui envoie des notifications lorsque les valeurs d'une métrique sont supérieures ou inférieures au seuil pour une fenêtre de nouveau test spécifique. Par exemple, la condition d'une règle d'alerte peut être remplie lorsque l'utilisation du processeur est supérieure à 80% pendant au moins cinq minutes.
Ce contenu ne concerne pas les règles d'alerte basées sur les journaux. Pour en savoir plus sur les règles d'alerte basées sur les journaux, qui vous avertissent lorsqu'un message particulier apparaît dans vos journaux, consultez la section Surveiller vos journaux.
Ce document ne décrit pas les éléments suivants:
- Comment être averti lorsque les données cessent d'arriver. Pour en savoir plus, consultez la section Créer des règles d'alerte en cas d'absence de métrique.
- Recevoir une notification en fonction de la valeur prédite d'une métrique Pour en savoir plus, consultez la section Créer des règles d'alerte basées sur les métriques prévues.
Créer une règle d'alerte à l'aide de l'API Cloud Monitoring Pour en savoir plus, consultez Créer des règles d'alerte à l'aide de l'API.
Créer une règle d'alerte dont la condition inclut une requête MQL (Monitoring Query Language) Ces règles peuvent utiliser un seuil statique ou dynamique. Pour en savoir plus, consultez les documents suivants :
Avant de commencer
-
Pour obtenir les autorisations nécessaires pour créer et modifier des règles d'alerte à l'aide de la console Google Cloud, demandez à votre administrateur de vous attribuer le rôle IAM Éditeur Monitoring (
roles/monitoring.editor
) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.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 Cloud Monitoring, consultez la page Contrôler les accès avec Identity and Access Management.
Assurez-vous de bien connaître les concepts généraux des règles d'alerte. Pour en savoir plus sur ces sujets, consultez la section Présentation des alertes.
Configurez les canaux de notification que vous souhaitez utiliser pour recevoir des notifications. À des fins de redondance, nous vous recommandons de créer plusieurs types de canaux de notification. Pour en savoir plus, consultez Créer et gérer des canaux de notification.
Créer une règle d'alerte
Pour créer une règle d'alerte qui compare la valeur de cette métrique à un seuil statique, procédez comme suit:
-
Dans la console Google Cloud, accédez à la page notifications Alertes:
Accéder à l'interface des alertes
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Surveillance.
- Sélectionnez Créer une règle.
Sélectionnez la série temporelle à surveiller :
Cliquez sur Sélectionner une métrique, parcourez les menus pour sélectionner un type de ressource et un type de métrique, puis cliquez sur Appliquer.
Le menu Sélectionner une métrique contient des fonctionnalités qui vous aident à trouver les types de métriques disponibles:
- Pour rechercher un type de métrique spécifique, utilisez la barre de filtres filter_list.
Par exemple, si vous saisissez
util
, vous limitez le menu afin d'afficher les entrées qui incluentutil
. Les entrées s'affichent lorsqu'elles réussissent un test "contient" non sensible à la casse.
- Pour afficher tous les types de métriques, même celles sans données, cliquez sur Métrique non répertoriée dans le menu. Active. Par défaut, les menus n'affichent que les types de métriques contenant des données. Pour en savoir plus, consultez la section
Vous pouvez surveiller n'importe quelle métrique intégrée ou n'importe quelle métrique définie par l'utilisateur.
- Pour rechercher un type de métrique spécifique, utilisez la barre de filtres filter_list.
Par exemple, si vous saisissez
Facultatif: Pour surveiller un sous-ensemble de séries temporelles correspondant aux types de métriques et de ressources que vous avez sélectionnés à l'étape précédente, cliquez sur Ajouter un filtre. Dans la boîte de dialogue de filtrage, sélectionnez l'étiquette selon laquelle filtrer, un comparateur, puis la valeur du filtre. Par exemple, le filtre
zone =~ ^us.*.a$
utilise une expression régulière pour établir une correspondance avec toutes les données de séries temporelles dont le nom de zone commence parus
et se termine para
. Pour en savoir plus, consultez la section Filtrer la série temporelle sélectionnée.Facultatif: Pour modifier l'alignement des points d'une série temporelle, définissez les champs Fenêtre glissante et Fenêtrage glissant dans la section Transformer les données.
Ces champs spécifient la manière dont les points enregistrés dans une fenêtre sont combinés. Par exemple, supposons que la fenêtre dure 15 minutes et que le fenêtrage soit
max
. Le point aligné correspond à la valeur maximale de tous les points au cours des 15 dernières minutes. Pour en savoir plus, consultez la section Alignement: régularisation au sein de la série.Vous pouvez également surveiller le taux de variation d'une valeur de métrique en utilisant le champ Fenêtrage glissant pour indiquer un pourcentage de variation. Pour en savoir plus, consultez l'article Contrôler une variation.
Facultatif: Combinez des séries temporelles si vous souhaitez réduire le nombre de séries temporelles surveillées par une stratégie, ou lorsque vous ne souhaitez surveiller qu'un ensemble de séries temporelles. Par exemple, au lieu de surveiller l'utilisation du processeur de chaque instance de VM, vous pouvez calculer l'utilisation moyenne du processeur pour toutes les VM d'une zone, puis surveiller cette moyenne. Par défaut, les séries temporelles ne sont pas combinées. Pour obtenir des informations générales, consultez la section Réduction: combiner des séries temporelles.
Pour combiner toutes les séries temporelles, procédez comme suit:
- Dans la section Sur des séries temporelles, cliquez sur expand_more Développer.
- Définissez le champ Time series Aggregation (Agrégation de séries temporelles) sur une valeur autre que
none
. Par exemple, pour afficher la valeur moyenne de la série temporelle, sélectionnezmean
. - Vérifiez que le champ Grouper les séries temporelles par est vide.
Pour combiner ou regrouper des séries temporelles par valeurs de libellé, procédez comme suit:
- Dans la section Sur des séries temporelles, cliquez sur expand_more Développer.
- Définissez le champ Time series Aggregation (Agrégation de séries temporelles) sur une valeur autre que
none
. - Dans le champ Time series group by (Regrouper par séries temporelles), sélectionnez les étiquettes à utiliser pour le regroupement.
Par exemple, si vous effectuez un regroupement par étiquette
zone
, puis que vous définissez le champ d'agrégation sur une valeur demean
, le graphique affiche une série temporelle pour chaque zone pour laquelle des données sont disponibles. Les séries temporelles affichées pour une zone spécifique correspondent à la moyenne de toutes les séries temporelles associées à cette zone.Cliquez sur Suivant.
Configurez le déclencheur de condition:
Laissez le champ Type de condition sur la valeur par défaut Seuil.
Sélectionnez une valeur pour le menu Déclencheur d'alerte. Ce menu vous permet de spécifier le sous-ensemble de séries temporelles qui doit dépasser le seuil pour que la condition soit remplie.
Indiquez quand la valeur d'une métrique dépasse le seuil à l'aide des champs Position du seuil et Valeur du seuil. Par exemple, si vous définissez ces valeurs sur Au-dessus du seuil et
0.3
, toute mesure supérieure à0.3
enfreint le seuil.Facultatif: Pour sélectionner la durée pendant laquelle les mesures doivent dépasser le seuil avant que Monitoring envoie une notification, développez Options avancées, puis utilisez le menu Nouvelle fenêtre de test.
La valeur par défaut est No retest (Aucun nouveau test). Avec ce paramètre, une seule mesure peut entraîner l'envoi d'une notification. Pour en savoir plus et obtenir un exemple, consultez la section Paramètres de période et de durée de l'alignement.
Facultatif: Pour spécifier comment Monitoring évalue la condition lorsque les données cessent d'arriver, développez Options avancées, puis utilisez le menu Évaluation des données manquantes.
Le menu Évaluation des données manquantes est désactivé lorsque la valeur de la fenêtre de nouveau test est No retest (Aucun nouveau test).
Console Google Cloud
Champ "Évaluation des données manquantes"Résumé Détails Données manquantes vides Les incidents ouverts restent ouverts.
Les nouveaux incidents ne sont pas ouverts.Lorsque les conditions sont remplies, elles continuent d'être remplies lorsque les données cessent d'arriver. Si un incident est ouvert pour cette condition, il reste ouvert. Lorsqu'un incident est ouvert et qu'aucune donnée n'arrive, le minuteur de fermeture automatique démarre après un délai d'au moins 15 minutes. Si le délai expire, l'incident est clôturé.
Lorsque les conditions ne sont pas remplies, elles continuent à l'être lorsque les données cessent d'arriver.
Points de données manquants traités comme des valeurs qui ne respectent pas la condition du règlement Les incidents ouverts restent ouverts.
De nouveaux incidents peuvent être ouverts.Lorsque les conditions sont remplies, elles continuent d'être remplies lorsque les données cessent d'arriver. Si un incident est ouvert pour cette condition, il reste ouvert. Lorsqu'un incident est ouvert et qu'aucune donnée n'arrive pendant la durée de fermeture automatique plus 24 heures, l'incident est clôturé.
Pour les conditions qui ne sont pas remplies, ce paramètre fait en sorte que la condition de seuil de métrique se comporte comme une
metric-absence condition
. Si les données n'arrivent pas dans le délai spécifié par la fenêtre de nouveau test, la condition est évaluée comme remplie. Pour une règle d'alerte à une condition, la condition remplie entraîne l'ouverture d'un incident.Points de données manquants traités comme des valeurs n'enfreignant pas la condition du règlement Les incidents ouverts sont fermés.
Les nouveaux incidents ne sont pas ouverts.Lorsque les conditions sont remplies, la condition cesse d'être remplie lorsque les données cessent d'arriver. Si un incident est ouvert pour cette condition, il est clôturé.
Lorsque les conditions ne sont pas remplies, elles continuent à l'être lorsque les données cessent d'arriver.
Cliquez sur Suivant.
Facultatif: Créez une règle d'alerte avec plusieurs conditions.
La plupart des règles surveillent un seul type de métrique. Par exemple, une règle peut surveiller le nombre d'octets écrits sur une instance de VM. Lorsque vous souhaitez surveiller plusieurs types de métriques, créez une règle avec plusieurs conditions. Chaque condition surveille un type de métrique. Une fois les conditions créées, vous spécifiez leur mode de combinaison. Pour en savoir plus, consultez la section Règles avec plusieurs conditions.
Pour créer une règle d'alerte avec plusieurs conditions, procédez comme suit:
- Pour chaque condition supplémentaire, cliquez sur Ajouter une condition d'alerte, puis configurez cette condition.
- Cliquez sur Suivant et configurez le mode de combinaison des conditions.
- Cliquez sur Suivant pour accéder aux notifications et à la documentation configurées.
Configurez les notifications:
Développez le menu Notifications et nom, puis sélectionnez vos canaux de notification. À des fins de redondance, nous vous recommandons d'ajouter plusieurs types de canaux de notification à une règle d'alerte. Pour en savoir plus, consultez Gérer les canaux de notification.
Facultatif: Pour recevoir une notification lorsqu'un incident est clôturé, sélectionnez Notifier lors de la clôture de l'incident. Par défaut, lorsque vous créez une règle d'alerte avec la console Google Cloud, une notification n'est envoyée que lorsqu'un incident est créé.
Facultatif: Pour modifier le délai d'attente de Monitoring avant la fermeture d'un incident après l'arrêt des données, sélectionnez une option dans le menu Délai de fermeture automatique de l'incident. Par défaut, lorsque les données cessent d'arriver, Monitoring attend sept jours avant de fermer un incident ouvert.
Sélectionnez une option dans le menu Niveau de gravité de la règle. Les incidents et les notifications affichent le niveau de gravité.
Facultatif: Pour ajouter des étiquettes personnalisées à la règle d'alerte, dans la section Libellés utilisateur de la règle, procédez comme suit:
- Cliquez sur Ajouter un libellé, puis saisissez le nom du libellé dans le champ Clé. Les noms des étiquettes doivent commencer par une lettre minuscule et peuvent contenir des lettres minuscules, des chiffres, des traits de soulignement et des tirets.
Par exemple, saisissez
severity
. - Cliquez sur Valeur, puis saisissez la valeur de votre libellé. Les valeurs d'étiquette peuvent contenir des lettres minuscules, des chiffres, des traits de soulignement et des tirets.
Par exemple, saisissez
critical
.
Pour savoir comment gérer vos notifications à l'aide des libellés de stratégie, consultez la page Annoter les incidents à l'aide de libellés.
- Cliquez sur Ajouter un libellé, puis saisissez le nom du libellé dans le champ Clé. Les noms des étiquettes doivent commencer par une lettre minuscule et peuvent contenir des lettres minuscules, des chiffres, des traits de soulignement et des tirets.
Par exemple, saisissez
Facultatif: dans la section Documentation, saisissez le contenu à inclure dans la notification.
Pour mettre en forme votre documentation, vous pouvez utiliser du texte brut, Markdown et de variables. Vous pouvez également inclure des liens pour aider les utilisateurs à déboguer l'incident, tels que des liens vers des playbooks internes, des tableaux de bord Google Cloud et des pages externes. Par exemple, le modèle de documentation suivant décrit un incident d'utilisation du processeur pour une ressource
gce_instance
, et inclut plusieurs variables pour référencer les ressources REST de règle d'alerte et de condition. Le modèle de documentation redirige ensuite les lecteurs vers des pages externes pour faciliter le débogage.Lorsque des notifications sont créées, Monitoring remplace les variables de documentation par leurs valeurs. Les valeurs remplacent les variables uniquement dans les notifications. Le volet d'aperçu et d'autres emplacements de la console Google Cloud n'affichent que la mise en forme Markdown.
Avec prévisualisation
## CPU utilization exceeded ### Summary The ${metric.display_name} of the ${resource.type} ${resource.label.instance_id} in the project ${resource.project} has exceeded 90% for over 15 minutes. ### Additional resource information Condition resource name: ${condition.name} Alerting policy resource name: ${policy.name} ### Troubleshooting and Debug References Repository with debug scripts: example.com Internal troubleshooting guide: example.com ${resource.type} dashboard: example.com
Mettre en forme dans la notification
Pour en savoir plus, consultez Annoter des notifications avec de la documentation définie par l'utilisateur et Utiliser des commandes de canal.
Cliquez sur Nom de l'alerte et saisissez un nom pour la règle d'alerte.
Cliquez sur Créer une stratégie.
Filtrer la série temporelle sélectionnée
Les filtres garantissent que seules les séries temporelles répondant à un ensemble de critères sont surveillées. Lorsque vous appliquez des filtres, vous pouvez réduire le nombre de lignes du graphique, ce qui peut améliorer ses performances. Vous pouvez également réduire la quantité de données surveillées en appliquant l'agrégation. Les filtres permettent de s'assurer que seules les séries temporelles répondant à un ensemble de critères sont utilisées. Lorsque vous appliquez des filtres, vous avez moins de séries temporelles à évaluer, ce qui peut améliorer les performances de l'alerte.
Un filtre est composé d'une étiquette, d'un comparateur et d'une valeur. Par exemple, pour faire correspondre toutes les séries temporelles dont le libellé zone
commence par "us-central1"
, vous pouvez utiliser le filtre zone=~"us-central1.*"
, qui utilise une expression régulière pour effectuer la comparaison.
Lorsque vous filtrez par ID de projet ou par conteneur de ressources, vous devez utiliser l'opérateur "égal", (=)
. Lorsque vous filtrez selon d'autres étiquettes, vous pouvez utiliser n'importe quel comparateur compatible.
En règle générale, vous pouvez filtrer les étiquettes de métrique et de ressource, ainsi que par groupe de ressources.
Lorsque vous indiquez plusieurs critères de filtrage, seules les séries temporelles répondant à tous les critères sont surveillées.
Pour ajouter un filtre, cliquez sur Ajouter un filtre, remplissez les champs de la boîte de dialogue, puis cliquez sur OK. Dans la boîte de dialogue, utilisez le champ Filter (Filtrer) pour sélectionner le critère en fonction duquel filtrer, sélectionner l'opérateur de comparaison, puis sélectionner la valeur. Chaque ligne du tableau suivant répertorie un opérateur de comparaison, sa signification et un exemple:
Opérateur | Signification | Exemple |
---|---|---|
= |
Égalité | resource.labels.zone = "us-central1-a" |
!= |
Inégalité | resource.labels.zone != "us-central1-a" |
=~ |
Égalité Expression régulière 2 | monitoring.regex.full_match("^us.*") |
!=~ |
Inégalité Expression régulière2 | monitoring.regex.full_match("^us.*") |
starts_with |
La valeur commence par | resource.labels.zone = starts_with("us") |
ends_with |
La valeur se termine par | resource.labels.zone = ends_with("b") |
has_substring |
La valeur contient | resource.labels.zone = has_substring("east") |
one_of |
Une | resource.labels.zone = one_of("asia-east1-b", "europe-north1-a") |
!starts_with |
La valeur ne commence pas par | resource.labels.zone != starts_with("us") |
!ends_with |
La valeur ne se termine pas par | resource.labels.zone != ends_with("b") |
!has_substring |
La valeur ne contient pas | resource.labels.zone != has_substring("east") |
!one_of |
La valeur n'est pas l'une des suivantes | resource.labels.zone != one_of("asia-east1-b", "europe-north1-a") |
Résoudre les problèmes
Cette section contient des conseils de dépannage.
Métrique non listée dans le menu des métriques disponibles
Pour surveiller une métrique non répertoriée dans le menu Sélectionner une métrique, effectuez l'une des opérations suivantes:
Pour créer une règle d'alerte qui surveille une métrique Google Cloud, développez le menu Sélectionner une métrique, puis cliquez sur
Active. Lorsque cette option est désactivée, le menu répertorie toutes les métriques des services Google Cloud et toutes les métriques avec des données.Pour configurer une condition pour un type de métrique personnalisée avant que ce type de métrique ne génère des données, vous devez spécifier le type de métrique à l'aide d'un filtre Monitoring:
- Sélectionnez ? dans l'en-tête de la section Sélectionner une métrique, puis sélectionnez Mode de filtrage direct dans l'info-bulle.
Saisissez un filtre de surveillance ou un sélecteur de série temporelle. Pour en savoir plus sur la syntaxe, consultez les documents suivants:
Surveiller un taux de variation
Pour surveiller le taux de variation d'une valeur de métrique, définissez le champ Fenêtrage glissant sur pourcentage de variation. Lorsque la condition est évaluée, Monitoring calcule le taux de changement de la métrique en pourcentage, puis le compare au seuil de la condition. Ce processus de comparaison comporte deux étapes:
- Si la série temporelle possède un genre de métrique
DELTA
ouCUMULATIVE
, elle est convertie en une série de genre de métriqueGAUGE
. Pour en savoir plus sur la conversion, consultez la section Genres, types et conversions. - Monitoring calcule le pourcentage de variation en comparant la valeur moyenne de la fenêtre glissante de 10 minutes la plus récente à la valeur moyenne de la fenêtre glissante de 10 minutes avant le début de la période d'alignement.
Vous ne pouvez pas modifier la période glissante de 10 minutes utilisée pour les comparaisons dans une règle d'alerte de taux de changement. Cependant, vous spécifiez la période d'alignement lorsque vous créez la condition.
Étapes suivantes
- Pour créer une règle qui compare la valeur d'une série temporelle à un seuil dynamique, vous devez utiliser MQL. Pour en savoir plus, consultez la section Créer des niveaux de gravité dynamiques à l'aide de MQL.
Les instructions de cette page s'appliquent à toutes les règles d'alerte. Les documents suivants fournissent des conseils pour des configurations spécifiques: