Ce document explique comment recevoir des notifications lorsque votre application échoue ou lorsque ses performances ne satisfont pas les critères définis.
Fonctionnement des alertes
Le processus d'alerte Cloud Monitoring comporte trois parties :
Une règle d'alerte décrit les circonstances dans lesquelles vous souhaitez être averti d'un incident et de quelle manière. Elle 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 définie dans 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 du moment où les conditions ont été remplies. Ces informations peuvent vous aider à résoudre les problèmes qui ont provoqué 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 une règle d'alerte pour envoyer un e-mail à
[email protected]
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 trois types de données :
Données de séries temporelles, également appelées données de métriques, stockées par Monitoring. Ces types de règles sont appelés règles d'alerte basées sur les métriques.
Pour apprendre à configurer une règle d'alerte basée sur des métriques, consultez le guide de démarrage rapide de Compute Engine.
Données d'entrée de journal stockées par Cloud Logging. Les règles d'alerte qui évaluent les entrées de journaux individuelles 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 s'affiche dans vos journaux. Pour en savoir plus, consultez Surveiller vos journaux.
Résultats d'une requête SQL exécutée dans l'Analyse de journaux sur les données des entrée de journal stockées dans Logging. Les règles d'alerte qui surveillent les résultats d'une requête SQL sont appelées règles d'alerte basées sur SQL. Pour en savoir plus, consultez Surveiller les résultats de vos requêtes SQL avec une règle d'alerte.
Les règles d'alerte basées sur SQL sont disponibles en version Preview publique.
Le processus d'alerte vous aide à répondre aux problèmes lorsque les performances d'une application ne répondent pas aux valeurs acceptables. Par exemple, vous déployez une application Web sur une instance de machine virtuelle (VM) Compute Engine. Même si vous vous attendez à ce que la latence de réponse HTTP fluctue, vous souhaitez que votre équipe d'assistance réagisse lorsque l'application présente une latence élevée sur une période prolongée. Vous pouvez créer une règle d'alerte basée sur une métrique qui surveille la métrique de latence de réponse 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 des intégrations ou de certaines pages de la console Google Cloud . Vous pouvez également configurer une règle d'alerte à l'aide de la consoleGoogle Cloud , de l'API Cloud Monitoring, de la CLI Google Cloud et de Terraform.
Utiliser des intégrations et des règles d'alerte recommandées
Monitoring fournit des packages prédéfinis qui vous permettent de créer des règles d'alerte pour vos servicesGoogle Cloud et vos intégrations tierces. Les 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 servicesGoogle 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. Lorsque vous activez une règle d'alerte recommandée, vous configurez son canal de notification et vous pouvez éventuellement modifier d'autres valeurs. Une fois la configuration effectuée, la règle d'alerte commence immédiatement à surveiller sa cible, sans nécessiter d'autre saisie de l'utilisateur.
Les règles d'alerte recommandées sont utiles lorsque vous avez déployé un nouveau service et que vous souhaitez définir des alertes sur des métriques importantes. Par exemple, le package d'intégration Cloud SQL est fourni avec des règles d'alerte recommandées pour les instances en échec et les transactions lentes :
Pour en savoir plus sur les intégrations d'alertes, consultez Surveiller des applications tierces.
Créer des règles d'alerte
Vous pouvez créer des règles d'alerte pour surveiller différents types de données en fonction de vos besoins en termes d'alertes. Les sections suivantes listent les différents types de données que vous pouvez surveiller avec les règles d'alerte.
Surveiller les données de séries temporelles
Type de condition | Description | Exemple |
---|---|---|
Condition de seuil de métrique | Les conditions de seuil de métrique sont remplies lorsque les valeurs d'une métrique sont supérieures ou inférieures à un seuil pour une fenêtre de retest spécifique. Pour en savoir plus, consultez Créer des règles d'alerte basées sur un seuil de métrique et Créer des règles d'alerte à l'aide de l'API. |
Vous souhaitez 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 retest spécifique. La période de retest maximale 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 disposer d'une règle d'alerte qui ouvre un incident avec votre équipe d'assistance lorsqu'une ressource ne répond à aucune requête HTTP pendant 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évoit que le seuil sera dépassé au cours de la prochaine période de prévision. La période de prévision peut aller d'une heure à sept jours. Pour en savoir plus, consultez Créer des règles d'alerte basées sur des valeurs de métriques prévues et Créer des règles d'alerte à l'aide de l'API. |
Vous souhaitez qu'une règle d'alerte ouvre un incident auprès de votre équipe d'assistance lorsqu'une ressource est susceptible d'atteindre 80 % d'utilisation de l'espace disque dans les 24 heures à venir. |
Surveiller les données des entrée de journal
Pour surveiller des entrées de journaux individuelles, utilisez une règle d'alerte 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 expression d'une entrée de journal correspond aux critères de la règle d'alerte. Par exemple, vous souhaitez qu'une règle d'alerte ouvre un incident avec votre équipe d'assistance lorsque le champ message
d'une entrée de journal contient product_ids=['tier_1_support', 'tier_2_support']
.
Pour en savoir plus, consultez Configurer des règles d'alerte basées sur les journaux dans la documentation Logging.
Surveiller les résultats des requêtes SQL
Pour surveiller les résultats des requêtes SQL, utilisez une règle d'alerte basée sur SQL.
La condition d'une règle d'alerte basée sur SQL analyse périodiquement vos données d'entrée de journal, puis crée des incidents lorsque la table des résultats de la requête répond à certains critères. Ce type de règle d'alerte est utile lorsque vous avez besoin d'une règle d'alerte qui surveille les agrégations de données ou les modèles complexes dans plusieurs entrées de journal. Par exemple, vous souhaitez recevoir une notification lorsque plus de 50 entrées de journal au cours des 60 dernières minutes ont une gravité de WARNING
.
Pour en savoir plus, consultez Surveiller les résultats de vos requêtes SQL avec une règle d'alerte dans la documentation Logging.
Composants des règles d'alerte
Chaque règle d'alerte comporte les composants suivants :
Une condition qui décrit lorsqu'une ressource ou un groupe de ressources est dans un état nécessitant une action 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 les filtres et les regroupements. Vos conditions peuvent surveiller une seule métrique, plusieurs métriques ou un ratio de métriques. Vous pouvez également utiliser le langage de requête Prometheus (PromQL) 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 qui décrivent qui doit être averti lorsqu'une action est requise. Pour en savoir plus, consultez Créer et gérer des canaux de notification.
Documentation qui s'affiche dans les notifications et sur les pages d'incidents. Vous pouvez configurer l'objet d'une notification et ajouter des informations utiles au corps de la notification. Par exemple, vous pouvez configurer la notification pour qu'elle affiche des liens vers des guides internes ou vers des pages Google Cloud telles que des tableaux de bord personnalisés. Pour en savoir plus sur la documentation, y compris des exemples, consultez Annoter les incidents avec une 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 de vos métriques. Monitoring accepte les types de requêtes suivants :
Le langage de requête Prometheus (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 règles d'alerte pour inclure une requête PromQL dans leur condition. Vos requêtes PromQL peuvent utiliser n'importe quelle expression valide, comme des combinaisons de métriques, des ratios et des seuils de mise à l'échelle. En configurant des règles d'alerte basées sur PromQL dans Google Cloud, vous pouvez réduire les dépendances vis-à-vis de l'infrastructure d'alerte externe. Pour en savoir plus, consultez PromQL dans Cloud Monitoring et Présentation des alertes PromQL.
Les filtres Monitoring vous permettent de configurer des règles d'alerte pour utiliser des ratios de métriques basés sur des filtres. Les règles d'alerte basées sur des filtres ne peuvent pas être consultées ni modifiées dans la console Google Cloud . Pour obtenir un exemple de règle utilisant des filtres de surveillance, consultez Ratio de métriques.
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 Monitoring Query Language. Pour en savoir plus, consultez Présentation du langage MQL (Monitoring Query Language) et Règles d'alerte avec MQL.
Gérer les règles d'alerte et les incidents
Une fois la règle d'alerte activée, Monitoring surveille en permanence les conditions de cette règle. Vous ne pouvez pas configurer la règle d'alerte pour qu'elle surveille les conditions uniquement pour certaines périodes. Si vous souhaitez désactiver la règle d'alerte pendant une certaine période, créez une mise en veille.
Si un incident est ouvert et que Monitoring détermine que les conditions de la règle basée sur des métriques ne sont plus remplies, il ferme automatiquement l'incident et envoie une notification concernant la fermeture.
Tarifs
En général, les métriques système Cloud Monitoring sont gratuites, contrairement à celles provenant de systèmes, d'agents ou d'applications externes. Les métriques facturables sont facturées en fonction du nombre d'octets ou d'échantillons ingérés.
Pour en savoir plus sur la tarification de Cloud Monitoring, consultez les documents suivants :
Pour savoir comment surveiller le nombre de portées de trace ou de journaux ingérés, ou comment être averti lorsqu'un contenu spécifique est inclus dans une entrée de journal, consultez les documents suivants :
- Alertes sur l'ingestion mensuelle de journaux
- Alertes sur l'ingestion mensuelle des délais de trace
- Configurer des alertes basées sur les journaux
Étapes suivantes
Pour en savoir plus sur la latence des notifications et l'incidence des choix de paramètres d'une règle d'alerte sur l'envoi des notifications, consultez la page Comportement des règles d'alerte basées sur les métriques.
Pour obtenir la liste des exemples de règles basées sur des métriques, consultez Résumé des exemples de règles d'alerte.