Présentation de la surveillance synthétique

Ce document décrit l'assistance fournie par Cloud Monitoring pour les moniteurs synthétiques, qui vous permettent de tester la disponibilité, la cohérence et les performances de vos services, applications, pages Web et API. Les moniteurs synthétiques envoient périodiquement des requêtes simulées, puis enregistrent si ces requêtes ont abouti. Ils enregistrent également des données supplémentaires sur la requête, telles que la latence. Vous pouvez recevoir une notification lorsqu'un test échoue. Pour ce faire, créez une règle d'alerte afin de surveiller les résultats des tests.

Pour tester vos services et applications, vous pouvez utiliser l'une des approches suivantes :

  • Les tests de disponibilité permettent à Google Cloud d'interroger régulièrement une application qui répond aux requêtes HTTP, HTTPS ou TCP. Les vérifications de disponibilité peuvent tester des points de terminaison publics ou privés, et elles peuvent valider les données de réponse.

  • Les moniteurs synthétiques personnalisés et basés sur Mocha vous permettent de déployer une suite de tests que vous pouvez utiliser pour tester une application qui répond aux requêtes HTTP ou HTTPS. Pour créer ces moniteurs synthétiques, vous commencez par un framework fourni par Cloud Monitoring (personnalisé ou Mocha), puis vous écrivez vos tests. Si vous avez accès à Gemini Code Assist dans ce projet, vous pouvez fournir une invite pour générer votre code de test.

  • Les vérificateurs de liens non fonctionnels permettent à Google Cloud de tester régulièrement URI, puis testez un nombre configurable de liens trouvés à cet URI.

Le tableau suivant répertorie les outils que vous pouvez utiliser pour créer des vérifications de disponibilité et des moniteurs synthétiques :

console Google Cloud API Cloud Monitoring Terraform Bibliothèques clientes
Tests de disponibilité O O O O
Surveillance synthétique O O O
Vérifications de liens non fonctionnels O O O

À propos des tests de disponibilité

Il existe deux types de tests de disponibilité:

  • Les tests de disponibilité publics envoient des requêtes depuis plusieurs emplacements dans le monde entier vers des URL ou des ressources Google Cloud publiquement disponibles.
  • Les tests de disponibilité privés envoient des requêtes à des adresses IP internes. des adresses IP des ressources Google Cloud. Les vérifications de disponibilité privées peuvent envoyer des requêtes via un réseau privé à des ressources telles qu'une machine virtuelle (VM) ou un équilibreur de charge interne (ILB) de niveau L4.

Les requêtes effectuées au nom des vérifications de disponibilité proviennent de vérificateurs situés dans plusieurs régions Google Cloud. Lorsque vous créez un dans le test de disponibilité, vous spécifiez les régions des vérificateurs.

Le système d'exécution des requêtes pour les vérifications de disponibilité, fourni par Google Cloud, gère les éléments suivants :

  • Exécution des vérificateurs configurés.
  • Validation des résultats.

    La requête émise par un vérificateur aboutit si la ressource répond et que toutes les exigences de la configuration du test de disponibilité sont remplies. Sinon, la requête échoue. Les requêtes des vérificateurs individuels sont sans état : c'est-à-dire chaque requête est une action indépendante.

  • Collecter et stocker les résultats dans les métriques de test de disponibilité

    Pour en savoir plus sur ces métriques, consultez les entrées uptime_check dans le tableau des métriques monitoring.

  • Écriture d'entrées de journal en cas d'échec.

    Si vous créez un test de disponibilité à l'aide de la console Google Cloud, vous pouvez configurer le test de disponibilité pour qu'il écrive également une entrée de journal en cas d'échec. Si vous avez configuré un test de disponibilité public pour envoyer des pings ICMP, les résultats de ces pings sont écrits dans les journaux Cloud Logging lorsque le ping échoue. Pour en savoir plus, consultez la section Utiliser des pings ICMP.

À propos des outils de vérification des liens brisés et d'autres outils de surveillance synthétique

Les surveillances synthétiques vous permettent de définir ce que vous êtes et une séquence de tests. Par exemple, vous pouvez tester la page de connexion de votre application, le processus de paiement de votre boutique d'e-commerce ou les appels d'API que votre application effectue vers des services tiers.

Lorsque vous créez une surveillance synthétique, vous déployez Fonction Cloud Run de 2e génération basé sur Cloud Run. Votre fonction doit être écrite en Node.js et s'appuyer sur le code Open Source Framework du SDK Synthetics : Cloud Monitoring distribue et gère ce framework.

Cloud Monitoring accepte les types de surveillance synthétique suivants:

Le système d'exécution de requêtes pour la surveillance synthétique, fourni par Google Cloud gère les éléments suivants:

  • Exécution périodique de votre fonction Cloud Run.
  • Collecter et stocker les résultats de chaque exécution :

    • Informations sur la réussite et l'échec, telles que le message d'erreur, le type d'erreur et la ligne de code.
    • Durée d'exécution
    • Journaux
    • Métriques

    Pour en savoir plus sur l'affichage des résultats d'exécution, consultez Explorer les résultats de la surveillance synthétique

Surveiller et afficher les résultats

Vous pouvez observer les résultats de vos moniteurs synthétiques et de vos tests de disponibilité dans la console Google Cloud :

  • Pour les moniteurs synthétiques, accédez à la page Moniteurs synthétiques.
  • Pour les tests de disponibilité, accédez à la page Tests de disponibilité.

Pour recevoir une notification en cas d'échec de la surveillance synthétique ou d'un test de disponibilité, créez une règle d'alerte à l'aide de la la console Google Cloud ou la Google Cloud CLI.

Résoudre les échecs

Pour vous aider à résoudre les problèmes, les en-têtes de requête et les données journalisées incluent l'ID du moniteur synthétique ou de la vérification de l'état de fonctionnement associés. Pour en savoir plus, consultez la section Résoudre les problèmes liés aux moniteurs synthétiques ou aux tests de disponibilité.

Régionalité des données

N'utilisez pas de surveillance synthétique ni de vérification de la disponibilité lorsque vous avez configuré Assured Workloads, car vous avez des exigences de résidence des données ou de niveau d'impact 4 (IL4).

La surveillance cloud ne garantit pas que les données de la requête de vérification de l'état de fonctionnement sont conservées dans un emplacement géographique spécifique.

Pour les moniteurs synthétiques qui dépendent d'une fonction Cloud Run, vous pouvez spécifier la région dans laquelle votre fonction Cloud Run est déployée. Toutefois, votre fonction peut être appelée depuis n'importe quelle région compatible avec les serveurs de vérification de l'état de disponibilité. Ce comportement n'est pas configurable.

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 la tarification de Cloud Monitoring, consultez les documents suivants :

Limites

Les limites suivantes s'appliquent à l'utilisation de la surveillance synthétique:

Catégorie Valeur
Tests de disponibilité par champ d'application des métriques * 100
Nombre maximal de pings ICMP par test de disponibilité public 3
Surveillance synthétique par champ d'application des métriques 100
* Cette limite s'applique au nombre de configurations de tests de disponibilité. Chaque configuration de test de disponibilité inclut l'intervalle de temps entre les tests du statut de la ressource spécifiée.
Pour savoir comment augmenter cette limite, consultez la section Gérer votre quota avec la console Google Cloud.

Étape suivante