Présentation de Cloud Monitoring

Ce document fournit une vue d'ensemble des services sur lesquels Cloud Monitoring fournit. Ces services peuvent vous aider à comprendre le comportement, l'état de santé les performances de vos applications et des autres services Google Cloud. Cloud Monitoring collecte et stocke automatiquement les informations sur les performances. pour la plupart des services Google Cloud. Vous peut collecter Prometheus à l'aide de Google Cloud Managed Service pour Prometheus. Si vous installez l'agent Ops sur votre instance Compute Engine (VM), vous pouvez collecter des métriques et des journaux et d'applications tierces.

Les services d'alerte, de test et de visualisation fournis par Cloud Monitoring vous aide à répondre à des questions importantes, telles que les suivantes:

  • Quelle est la charge sur mon service ?
  • Mon site Web répond-il correctement ?
  • Mon service est-il performant ?

Cloud Monitoring est compatible avec la console Google Cloud et les API pour la plupart des de ses services. Certains services sont également compatibles avec Terraform. Les pages de référence de l'API Cloud Monitoring, telles que la page alertPolicies.list, vous permettent de tester les appels d'API directement depuis la page de référence.

Services Cloud Monitoring

Cloud Monitoring fournit différents services que vous pouvez utiliser pour analyser l'état et les performances de vos applications les autres services Google Cloud que vous utilisez.

Alertes et notifications

Pour recevoir une notification lorsque la valeur d'une métrique de performances répond aux critères que vous définissez une règle d'alerte. La règle d'alerte inclut la liste des personnes ou des groupes qui doivent recevoir des notifications. Compatibilité avec Monitoring canaux de notification courants, comme la messagerie, Cloud Mobile App et des services comme PagerDuty ou Slack. Vous pouvez par exemple créer une règle d'alerte pour être averti lorsque l'utilisation du processeur d'une VM dépasse 80%.

Chaque notification inclut des informations pertinentes sur un échec. inclut un lien vers un incident. Un incident est un enregistrement persistant qui stocke des informations que vous pouvez utiliser pour résoudre la défaillance. Généralement, un enregistrement liste l'état de l'incident, des liens vers les journaux et un graphique des métriques enregistrées les données, les étiquettes et la durée.

Le service d'alerte est intégré à de nombreux services Google Cloud. Lorsque ces existent, vous verrez peut-être un panneau listant les alertes recommandées, ou vous verrez peut-être un bouton sur un graphique qui vous permet de créer une règle d'alerte. Dans les deux cas, les règles d'alerte sont préconfigurées, vous spécifiez uniquement la liste des personnes ou des groupes à notifier.

Vous pouvez créer et gérer des règles d'alerte à l'aide de la console Google Cloud, l'API Cloud Monitoring, Google Cloud CLI ou Terraform.

Surveillance et validation proactives

Pour tester la disponibilité, la cohérence et les performances de vos services, des applications, des pages Web et des API, créer écrans synthétiques. Par exemple : vous pouvez vérifier la réactivité des points de terminaison HTTP, HTTPS et TCP tests de disponibilité, puis recevez une notification lorsqu'une le point de terminaison ne répond pas. Vous pouvez également créer vérificateur de liens non fonctionnels pour explorer une page Web, puis vous avertir lorsque des liens non fonctionnels sont détectés.

Vous pouvez créer et gérer des surveillances synthétiques à l'aide de la console Google Cloud, l'API Cloud Monitoring, Google Cloud CLI ou Terraform.

Visualisation des données

Pour visualiser vos données afin d'identifier des tendances, d'identifier les anomalies et d'autres des détails sur vos données, vous pouvez utiliser le Services de tableaux de bord et de graphiques:

Collecte et stockage de données

Cloud Monitoring collecte et stocke les types de données de métriques suivants:

  • Les métriques du système et des applications L'agent Ops collecte des informations sur les ressources système applications qui s'exécutent sur des instances Compute Engine. Vous pouvez configurer l'agent Ops pour collecter des métriques à partir de plug-ins tiers, comme les serveurs Web Apache ou Nginx, ou les bases de données MongoDB ou PostgreSQL.
  • Les métriques basées sur les journaux, qui enregistrent des informations numériques concernant les journaux écrits dans Cloud Logging. Les métriques basées sur les journaux définies par Google incluent le nombre d'erreurs détectées par votre service et le nombre total le nombre d'entrées de journal reçues par votre projet Google Cloud. Vous pouvez également définir des métriques basées sur les journaux.

Langages de requête

Lorsque vous créez une règle d'alerte ou un graphique, vous devez Fournissez une requête qui décrit les données que vous souhaitez surveiller ou représenter sous forme de graphique:

  • Console Google Cloud: vous pouvez créer votre requête en la sélectionnant dans les menus, ou écrire une requête. Les éditeurs de requête sont disponibles le langage de requête Prometheus (PromQL) et le langage MQL (Monitoring Query Language). Les éditeurs de requête pour fournir des vérifications de la syntaxe et des suggestions. Vous pouvez également écrire une expression Filtre de surveillance.

  • API Cloud Monitoring: elle est compatible avec le langage de requête Prometheus (PromQL), les requêtes MQL, et les expressions de filtre Monitoring.

Surveiller les grands systèmes

Cette section explique comment gérer des ressources et comment surveiller les métriques stockées plusieurs projets Google Cloud.

Gérer les ressources en tant que collection

Pour gérer vos ressources en tant que collection au lieu de créer un groupe de ressources individuellement. Un groupe de ressources est une collection dynamique de ressources qui répondent à certains des critères que vous indiquez. Lorsque vous ajoutez ou supprimez des ressources, par exemple en ajoutant des instances de VM Compute Engine l'appartenance au groupe change automatiquement. Voici des exemples de groupes de ressources:

  • Instances Compute Engine dont le nom commence par la chaîne prod-.
  • Ressources comportant le tag test-cluster.
  • Instances Amazon EC2 dans la région A ou la région B.

Après avoir défini un groupe de ressources, vous pouvez le surveiller comme s'il s'agissait d'une seule ressource. Par exemple : Vous pouvez configurer un test de disponibilité pour surveiller un groupe de ressources. Pour les graphiques et les règles d'alerte, vous pouvez également filtrer par nom de groupe.

Pour en savoir plus, consultez la section Configurer des groupes de ressources.

Surveiller les métriques de plusieurs projets Google Cloud

Pour afficher et surveiller les données de séries temporelles de plusieurs projets Google Cloud et comptes AWS via une seule interface, configurez un champ d'application des métriques multiprojet.

Par défaut, les pages Cloud Monitoring de la console Google Cloud fournissent n'accède qu'à la série temporelle stockée dans le projet effectuant une surveillance. La de surveillance est le projet que vous avez sélectionné avec Sélecteur de projet de la console Google Cloud. Le projet effectuant une surveillance stocke les alertes, les moniteurs synthétiques, tableaux de bord et groupes de surveillance que vous configurez.

Le projet de champ d'application héberge également un champ d'application des métriques. Le champ d'application des métriques définit les projets et les comptes dont les métriques sont visibles par le projet de champ d'application. Vous pouvez configurer le champ d'application des métriques pour inclure des données de séries temporelles provenant d'autres projets Google Cloud et de comptes AWS. Pour savoir comment modifier un champ d'application des métriques, consultez Configurez un champ d'application des métriques pour plusieurs projets.

Modèle de données Cloud Monitoring

Cette section présente le modèle de données Cloud Monitoring :

  • Un type de métrique décrit un élément mesurées. Exemples de types de métriques : utilisation du processeur d'une VM et le pourcentage d'utilisation d'un disque.

  • Une série temporelle est une structure de données qui contient les mesures horodatées d'une métrique ainsi que des informations sur la source et la signification de ces mesures.

Voici quelques détails sur le contenu d'une série temporelle:

  • Le tableau points contient les mesures horodatées.

    Voici un exemple de tableau points avec deux valeurs:

      "points": [
        {
          "interval": {
            "startTime": "2020-07-27T20:20:21.597143Z",
            "endTime": "2020-07-27T20:20:21.597143Z"
          },
          "value": {
            "doubleValue": 0.473005
          }
        },
        {
          "interval": {
            "startTime": "2020-07-27T20:19:21.597239Z",
            "endTime": "2020-07-27T20:19:21.597239Z"
          },
          "value": {
            "doubleValue": 0.473025
          }
        },
      ],
    

    Pour comprendre la signification d'une valeur, vous devez vous référer aux autres données incluses dans la série temporelle et aux définitions de ces données.

  • Le champ resource décrit le composant matériel ou logiciel surveillé. Dans Cloud Monitoring, le composant matériel ou logiciel est appelé ressource surveillée. Les instances Compute Engine et les applications App Engine sont des exemples de ressources surveillées. Pour obtenir une liste les ressources surveillées, consultez la liste des ressources surveillées.

    Voici un exemple de champ resource:

      "resource": {
        "type": "gce_instance",
        "labels": {
          "instance_id": "2708613220420473591",
          "zone": "us-east1-b",
          "project_id": "sampleproject"
        }
      }
    
    • Le champ type présente la ressource surveillée en tant que gce_instance, ce qui indique que ces mesures sont effectuées sur une instance de VM Compute Engine.

    • Le sous-champ labels contient des paires clé/valeur qui fournissent des informations supplémentaires sur la ressource surveillée. Pour un type gce_instance, les libellés identifient l'instance de VM surveillée.

  • Le champ metric décrit l'élément qui est mesuré.

    Voici un exemple de champ metric:

      "metric": {
        "labels": {
          "instance_name": "test"
        },
        "type": "compute.googleapis.com/instance/cpu/utilization"
      },
    
    • Pour les services Google, le champ type spécifie le service et les éléments surveillés. Dans cet exemple, le service Compute Engine pour mesurer l'utilisation du processeur. Lorsque le champ type commence par custom ou external, la métrique est soit une métrique personnalisée, soit une métrique définie par un tiers.

    • Le champ labels contient des paires clé/valeur qui fournissent des informations supplémentaires sur la mesure. Ces libellés sont définis dans le MetricDescriptor, qui est une structure de données qui définit les attributs des données mesurées. MetricDescriptor de la métrique compute.googleapis.com/instance/cpu/utilization qui inclut le libellé instance_name.

  • Le champ metricKind décrit la relation entre les mesures adjacentes au sein d'une série temporelle:

    • Les métriques GAUGE stockent la valeur de l'élément mesuré à un moment donné, par exemple un enregistrement de température horaire.

    • Les métriques CUMULATIVE stockent la valeur accumulée de l'élément mesuré à un moment donné, par exemple un kilométrage dans un véhicule.

    • Les métriques DELTA stockent le changement dans la valeur de l'élément mesuré sur une période spécifiée, par exemple un résumé des actions qui montre les gains ou les pertes de l'action.

  • Le champ valueType décrit le type de données pour la mesure: INT64, DOUBLE, BOOL, STRING ou DISTRIBUTION

Cloud Monitoring écrit une série temporelle pour chaque combinaison de valeurs de libellés de métriques et de ressources. Vous pouvez utiliser ces libellés pour regrouper et filtrer des séries temporelles. Par exemple, lorsqu'un projet Google Cloud contient plusieurs les instances de VM Compute Engine, l'utilisation du processeur pour chaque instance de VM est une série temporelle unique. Voici différentes manières d'afficher ces données :

  • Vous pouvez afficher l'utilisation du processeur de chaque instance de VM.
  • Vous pouvez afficher l'utilisation du processeur pour une instance de VM spécifique filtrer la série temporelle pour une valeur unique du libellé instance_id.
  • Vous pouvez regrouper les instances de VM par l'étiquette machine_type, puis afficher l'utilisation moyenne du processeur. La capture d'écran suivante illustre un graphique avec cette configuration:

    Utilisation moyenne du processeur, regroupée par type de machine.

Tarifs

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

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

Étape suivante