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 vos machines virtuelles (VM) Compute Engine, vous pouvez collecter des métriques et des journaux à partir de vos applications et d'applications tierces.

Les services d'alerte, de test et de visualisation fournis par Cloud Monitoring vous aident à répondre à des questions importantes, par exemple :

  • 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 la Google Cloud CLI ou 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. Par exemple, vous pouvez 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 une défaillance et un lien vers un incident. Un incident est un enregistrement persistant qui stocke des informations que vous pouvez utiliser pour résoudre l'échec. En règle générale, un enregistrement indique l'état de l'incident, des liens vers les journaux, un graphique des données de métrique enregistrées, des libellés et la durée.

Le service d'alerte est intégré à de nombreux services Google Cloud. Lorsque ces intégrations existent, un panneau peut s'afficher pour lister les alertes recommandées, ou un bouton sur un graphique peut vous permettre 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 tester la réactivité des points de terminaison HTTP, HTTPS et TCP à l'aide de tests de disponibilité, puis recevoir une notification lorsqu'un point de terminaison ne répond pas. Vous pouvez également créer un outil de vérification des liens brisés pour explorer une page Web, puis vous en avertir lorsqu'il détecte des liens brisé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 :

  • Métriques du système et des applications collectées par l'agent Ops sur les ressources système et les applications exécutées sur les 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 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. Des éditeurs de requêtes sont disponibles pour le langage de requête Prometheus (PromQL) et le langage de requête de surveillance (MQL). Les éditeurs de requêtes fournissent des vérifications et des suggestions de syntaxe. 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 les 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 et supprimez des ressources, par exemple en ajoutant des instances de VM Compute Engine à votre projet Google Cloud, 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. Le projet de champ d'application est le projet que vous avez sélectionné à l'aide de l'outil de sélection de projets de la console Google Cloud. Le projet de champ d'application stocke les alertes, les moniteurs synthétiques, les tableaux de bord et les 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 en savoir plus sur la modification d'un champ d'application des métriques, consultez la section Configurer 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é. L'utilisation du processeur d'une VM et le pourcentage d'un disque utilisé sont des exemples de types de métriques.

  • 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 Cloud, 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 les valeurs des étiquettes de ressources et de métriques. 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 en filtrant les séries temporelles pour une seule valeur du libellé instance_id.
  • Vous pouvez regrouper les instances de VM selon le libellé 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 Cloud Monitoring sont gratuites, contrairement aux métriques provenant de systèmes, d'agents ou d'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