Ce tutoriel explique comment configurer une alerte de disponibilité pour l'application Hello World pour Python s'exécutant dans l'environnement flexible App Engine à l'aide de Cloud Monitoring. Les alertes de disponibilité vous informent lorsque votre application ne diffuse pas de trafic. Vous pouvez également définir des alertes de disponibilité pour les applications exécutées sur Compute Engine ou Google Kubernetes Engine (GKE).
Objectifs
- Exécutez une application Hello World de base.
- Créez un test de disponibilité qui vérifie si l'application renvoie un code d'état HTTP 200.
- Créez une alerte qui vous envoie un e-mail en cas d'échec du test de disponibilité.
- Redémarrez l'application pour déclencher l'alerte.
Coûts
Obtenez une estimation des coûts en fonction de votre utilisation prévue à l'aide du simulateur de coût.
Monitoring est actuellement offert gratuitement aux utilisateurs bêta.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
Cloner l'exemple d'application
L'exemple d'application est disponible sur GitHub à l'adresse GoogleCloudPlatform/getting-started-python
.
Clonez le dépôt.
git clone https://github.com/GoogleCloudPlatform/getting-started-python.git
Accédez au répertoire de l'exemple :
cd getting-started-python/gce
Comme l'application ne renvoie que "Hello World!", elle ne nécessite aucune configuration et vous pouvez l'exécuter immédiatement.
gcloud app deploy
Pour afficher le message renvoyé, saisissez l'URL suivante dans votre navigateur :
https://PROJECT_ID.REGION_ID.r.appspot.com
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud.REGION_ID
: code attribué par App Engine à votre application
Configurer Cloud Monitoring pour votre projet
Une fois que vous avez configuré Monitoring et que vous avez déployé votre application, vous pouvez utiliser Monitoring pour créer un test de disponibilité. Le test pingue en permanence votre application déployée pour s'assurer qu'elle renvoie une réponse opérationnelle.
Pour accéder à Cloud Monitoring, procédez comme suit :- Dans Cloud Console, sélectionnez votre projet Google Cloud.
Accéder à Cloud Console - Dans le volet de navigation, sélectionnez Surveillance.
Créer un test de disponibilité
Dans Cloud Console, accédez à Monitoring.
Dans le volet de navigation, cliquez sur Tests de disponibilité, puis sur Créer un test de disponibilité.
Attribuez un titre à votre test, tel que
Check Hello World
, puis cliquez sur Suivant.Dans la section Cible, spécifiez le test de disponibilité à surveiller :
- Étant donné que vous avez déployé l'application sur App Engine, remplacez Type de ressource par App Engine au lieu de URL. (URL permet de générer une URL personnalisée sur une instance Compute Engine.)
- Sélectionnez le Service à surveiller par le test de disponibilité.
- Laissez le champ Chemin vide pour accéder par défaut à la page d'index principale.
- Laissez le champ Vérifier la fréquence à la valeur par défaut de 1 minute.
- Cliquez sur Next (Suivant).
Conservez les valeurs par défaut des champs Validation de la réponse et cliquez sur Suivant.
Dans la section Alertes et notifications, spécifiez la manière dont vous êtes notifié en cas d'alerte:
- Assurez-vous que le libellé du bouton bascule est Alerting is enabled (Les alertes sont activées).
- Conservez les valeurs par défaut des champs de nom et de durée.
Pour ajouter un canal de notification à la règle d'alerte, dans la zone de texte intitulée Notification channels (Canaux de notification), cliquez sur Menu . Sélectionnez les canaux à ajouter, puis cliquez sur OK. Les notifications sont regroupées par ordre alphabétique pour chaque type de canal.
Pour ajouter une entrée à la liste des cases à cocher, cliquez sur Manage notification channels (Gérer les canaux de notification) et suivez les instructions. Lorsque vous revenez à cette boîte de dialogue, cliquez sur Refresh (Actualiser) refresh.
Cliquez sur Create (Créer). Lorsque l'opération de création aboutit, le message Check and alert created (Test et alerte créés) s'affiche, puis la page du tableau de bord Tests de disponibilité s'affiche.
Le nouveau test de disponibilité est répertorié dans le tableau de bord des tests de disponibilité. Si vous cliquez sur le nom du test, vous ouvrez la vue détaillée de ce test de disponibilité. Cette vue affiche plusieurs graphiques, indique le pourcentage de temps d'activité et les informations de configuration, et répertorie les règles d'alerte configurées. Pour afficher une règle, cliquez sur son nom.
Vous pouvez également afficher la règle d'alerte sur la page Alertes. Le volet Règles de la page "Alertes" répertorie un sous-ensemble de règles. Pour afficher la liste de toutes les règles, cliquez sur Afficher toutes les règles.
Simuler une panne
Maintenant que le test de disponibilité est créé, vous pouvez simuler une panne en modifiant votre application pour qu'elle renvoie une erreur HTTP 404 Sorry, we can't find that page
plutôt qu'une réponse HTTP 200 OK
.
Le code suivant montre où l'application Hello World ne renvoie qu'un message "Hello World!" et le code d'état de la réponse est défini par défaut sur
200 OK
. Pour afficher ce code dans l'application Hello World, utilisez la fonction d'affichage.Pour que l'application Hello World renvoie un code d'erreur HTTP
404
, modifiez la ligne de retour en ajoutant une valeur404
à la deuxième partie de la valeur renvoyée.return 'Hello World', 404
Déployez la nouvelle application délibérément défectueuse.
gcloud app deploy
Dans un délai d'une demi-heure, vous recevrez un e-mail indiquant que votre test de disponibilité a échoué.
Effectuer un nettoyage
Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez les ressources individuelles.
Le moyen le plus simple d'empêcher la facturation est de supprimer le projet que vous avez créé pour ce tutoriel.
Pour supprimer le projet :
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.