Aperçu des alertes

Ce document explique comment être averti lorsque votre application échoue ou lorsque ses performances ne répondent pas aux critères définis.

Fonctionnement des alertes

Le processus d'alerte Cloud Monitoring se compose de trois parties:

  • Une règle d'alerte, qui décrit les circonstances dans lesquelles vous souhaitez être alerté et la manière dont vous souhaitez être informé d'un incident. La règle d'alerte peut surveiller les données de séries temporelles stockées par Monitoring ou les journaux stockés par Cloud Logging. Lorsque ces données remplissent la condition de la règle d'alerte, Monitoring crée un incident et envoie les notifications.

  • Chaque incident est un enregistrement du type de données surveillées et des conditions dans lesquelles les conditions ont été remplies. Ces informations peuvent vous aider à résoudre les problèmes à l'origine de l'incident.

  • Un canal de notification définit la manière dont vous recevez les notifications lorsque Monitoring crée un incident. Par exemple, vous pouvez configurer un canal de notification pour envoyer un e-mail à my-support-team@example.com et publier un message Slack sur le canal #my-support-team. Une règle d'alerte peut contenir un ou plusieurs canaux de notification.

Les règles d'alerte peuvent évaluer deux types de données:

  • Les données de séries temporelles, également appelées données de métriques, sont stockées par Monitoring. Ces types de règles sont appelés règles d'alerte basées sur les métriques.

    Pour savoir comment configurer une règle d'alerte basée sur les métriques, consultez le guide de démarrage rapide de Compute Engine.

  • Données de journaux stockées par Cloud Logging Ces types de règles sont appelées règles d'alerte basées sur les journaux. Les règles d'alerte basées sur les journaux vous avertissent lorsqu'un message particulier apparaît dans vos journaux.

    Ce document porte sur les règles d'alerte basées sur les métriques et fournit des informations générales sur les règles d'alerte basées sur les journaux, le cas échéant. Pour en savoir plus sur les règles d'alerte basées sur les journaux, consultez la section Surveiller vos journaux.

Le processus d'alerte vous aide à répondre aux problèmes lorsque les performances d'une application ne respectent pas les valeurs acceptables. Par exemple, vous pouvez déployer une application Web sur une instance de machine virtuelle (VM) Compute Engine. Bien que vous vous attendez à ce que la latence de réponse HTTP fluctue, vous souhaitez que votre équipe d'assistance réponde lorsque l'application présente une latence élevée sur une période étendue. Vous pouvez créer une règle d'alerte basée sur les métriques qui surveille la métrique de latence des réponses HTTP de l'application. Si la latence de réponse est supérieure à deux secondes pendant au moins cinq minutes, Monitoring crée un incident et envoie des notifications par e-mail à votre équipe d'assistance.

Créer une règle d'alerte

Il existe plusieurs façons de créer une règle d'alerte. Par exemple, vous pouvez utiliser des règles d'alerte préconfigurées en activant les alertes recommandées à partir d'intégrations ou de certaines pages de la console Google Cloud. Vous pouvez également configurer une nouvelle règle d'alerte à l'aide de la console Google Cloud, de l'API Cloud Monitoring, de Google Cloud CLI et de Terraform.

Utiliser les intégrations et les règles d'alerte recommandées

Monitoring fournit des packages prédéfinis pour vous permettre de créer des règles d'alerte pour vos services Google Cloud et vos intégrations tierces. Ces packages incluent des règles d'alerte recommandées, des exemples de tableaux de bord et des métriques clés pour le service. Ces packages sont disponibles pour les services Google Cloud tels que Google Kubernetes Engine, Compute Engine et Cloud SQL, ainsi que pour les intégrations tierces courantes telles que MongoDB, Kafka et Elasticsearch.

Lorsque vous installez un package, vous pouvez activer les règles d'alerte recommandées pour celui-ci. Lorsque vous activez une règle d'alerte recommandée, vous configurez son canal de notification et modifiez éventuellement d'autres valeurs. Après la configuration, la règle d'alerte commence immédiatement à surveiller sa cible, sans aucune autre entrée utilisateur requise.

Les règles d'alerte recommandées sont utiles lorsque vous avez déployé un nouveau service et que vous souhaitez envoyer des alertes sur des métriques importantes. Par exemple, le package d'intégration Cloud SQL est fourni avec les règles d'alerte recommandées en cas de défaillance des instances et de transactions lentes:

Deux des règles d'alerte recommandées pour le package d'intégration Cloud SQL.

Pour en savoir plus sur les intégrations d'alertes, consultez la page Surveiller des applications tierces.

Utilisez Cloud Monitoring

Si vous souhaitez créer une règle d'alerte et choisir son type de condition avec d'autres composants tels que le type de métrique et la série temporelle, utilisez Monitoring. Le tableau suivant répertorie les différents types de conditions que vous pouvez utiliser lorsque vous créez une règle d'alerte.

Type de condition Description Exemple
Condition de seuil de métrique

Les conditions de seuil de métrique sont remplies lorsque ses valeurs sont supérieures ou inférieures à un seuil pour une fenêtre de nouveau test spécifique.

Pour en savoir plus, consultez Créer des règles d'alerte basées sur les métriques et Créer des règles d'alerte à l'aide de l'API.

Vous souhaitez utiliser une règle d'alerte qui envoie une notification lorsque la latence de réponse est supérieure ou égale à 500 ms pour cinq tests de disponibilité consécutifs sur 10 minutes.
Condition d'absence de métrique

Les conditions d'absence de métrique sont remplies lorsqu'une série temporelle surveillée ne contient aucune donnée pour une fenêtre de nouveau test spécifique. La période maximale de nouveau test est de 23,5 heures.

Pour en savoir plus, consultez Créer des règles d'alerte en cas d'absence de métrique et Créer des règles d'alerte à l'aide de l'API.

Vous souhaitez définir une règle d'alerte qui ouvre un incident auprès de votre équipe d'assistance lorsqu'une ressource ne répond à aucune requête HTTP sur une période de cinq minutes.
Condition de valeur de métrique prévue

Les conditions de valeur de métrique prévues sont remplies lorsque la règle d'alerte prédit que le seuil sera enfreint au cours de la période de prévision à venir. La période de prévision peut aller de 1 heure à 7 jours.

Pour en savoir plus, consultez Créer des règles d'alerte basées sur les métriques prévues et Créer des règles d'alerte à l'aide de l'API.

Vous souhaitez définir une règle d'alerte qui ouvre un incident à votre équipe d'assistance lorsqu'une ressource est susceptible d'utiliser 80% de l'espace disque dans les prochaines 24 heures.
Condition basée sur les journaux

Une condition d'une règle d'alerte basée sur les journaux est remplie lorsque la règle d'alerte détecte qu'une métrique basée sur les journaux correspond aux critères de la règle d'alerte. Les métriques basées sur les journaux extraient les données de métriques du contenu des entrées de journal. Par exemple, vous pouvez utiliser une métrique basée sur les journaux pour compter le nombre d'entrées de journal contenant un message particulier ou pour extraire les informations de latence enregistrées dans les entrées de journal.

Pour en savoir plus, consultez Configurer des règles d'alerte basées sur les journaux et Créer une règle d'alerte basée sur les journaux à l'aide de l'API Cloud Monitoring.

Vous souhaitez définir une règle d'alerte qui ouvre un incident auprès de votre équipe d'assistance lorsque votre projet comporte au moins 50 entrées de journal dont le champ message contient product_ids=['tier_1_support', 'tier_2_support'].

Composants des règles d'alerte

Chaque règle d'alerte se compose des éléments suivants:

  • Condition qui décrit le moment où une ressource ou un groupe de ressources se trouve dans un état nécessitant une réponse de votre part. La condition inclut la source de données, un seuil statique ou dynamique et des méthodes d'agrégation de données telles que des filtres et groupby. Vos conditions peuvent surveiller une seule métrique, plusieurs métriques ou un ratio de métriques. Vous pouvez également utiliser des langages de requête tels que PromQL et Monitoring Query Language (MQL) pour inclure des expressions complexes telles que des seuils dynamiques et une logique conditionnelle.

    Si vous utilisez une intégration pour activer une règle d'alerte recommandée, la condition de la règle d'alerte est préremplie.

  • Liste des canaux de notification décrivant qui avertir lorsqu'une action est requise. Pour en savoir plus, consultez Créer et gérer des canaux de notification.

  • Documentation qui apparaît dans les notifications et les pages d'incident. Vous pouvez configurer l'objet d'une notification et ajouter des informations utiles dans le corps de la notification. Par exemple, vous pouvez configurer la notification pour afficher des liens vers des guides internes ou vers des pages Google Cloud, telles que des tableaux de bord personnalisés. Pour plus d'informations sur la documentation, y compris des exemples, consultez la section Annoter les incidents à l'aide de la documentation définie par l'utilisateur.

Langages de requête

Utilisez des langages de requête et des filtres dans vos règles d'alerte pour mieux contrôler l'évaluation des métriques. Monitoring accepte les types de requêtes suivants:

  • Prometheus Query Language (PromQL) est un langage de requête fonctionnel utilisé pour évaluer les données de séries temporelles en temps réel. Vous pouvez configurer des conditions de règle d'alerte pour inclure une requête PromQL dans leurs conditions. Vos requêtes PromQL peuvent utiliser n'importe quelle expression valide, telle que des combinaisons de métriques, des ratios et des seuils de scaling. En configurant des règles d'alerte avec une condition basée sur PromQL dans Google Cloud, vous pouvez réduire les dépendances sur l'infrastructure d'alerte externe. Pour en savoir plus, consultez les pages PromQL dans Cloud Monitoring et Règles d'alerte avec PromQL.

  • Le langage MQL (Monitoring Query Language) est une interface textuelle expressive qui vous permet de récupérer, de filtrer et de manipuler des données de séries temporelles. Vous pouvez créer des règles d'alerte avec des conditions qui incluent une opération d'alerte en langage de requête Monitoring. Pour en savoir plus, consultez les pages Présentation du langage de requête Monitoring et Règles d'alerte avec MQL.

  • Les filtres Monitoring permettent de configurer des règles d'alerte pour utiliser des ratios de métriques basées sur des filtres. Les règles d'alerte basées sur des filtres ne peuvent pas être affichées ni modifiées dans la console Google Cloud. Pour obtenir un exemple de règle utilisant des filtres Monitoring, consultez la section Ratio de métriques.

Gérer les règles d'alerte et les incidents

Une fois qu'une règle d'alerte est activée, Monitoring surveille en permanence ses conditions. Vous ne pouvez pas configurer la règle d'alerte pour surveiller les conditions uniquement pour certaines périodes. Si vous souhaitez désactiver la règle d'alerte pour une certaine période, créez une mise en attente.

Si un incident est ouvert et que Monitoring détermine que les conditions de la stratégie basée sur les métriques ne sont plus remplies, Monitoring ferme automatiquement l'incident et envoie une notification concernant la fermeture.

Tarification

En général, les métriques système de Cloud Monitoring sont gratuites, contrairement aux métriques des systèmes, agents ou applications externes. Les métriques facturables sont facturées en fonction du nombre d'octets ou du nombre d'échantillons ingérés.

Pour en savoir plus sur les tarifs de Cloud Monitoring, consultez les documents suivants:

Pour savoir comment surveiller le nombre de segments de trace ou de journaux ingérés, ou pour savoir comment être averti lorsque du contenu spécifique est inclus dans une entrée de journal, consultez les documents suivants:

Étapes suivantes