Déclencher une fonction Cloud à l'aide de Pub/Sub

Ce tutoriel explique comment utiliser Cloud Scheduler et Cloud Pub/Sub pour déclencher une fonction Cloud Functions. Il est courant d'utiliser Cloud Scheduler afin de planifier l'exécution d'une fonction Cloud Functions. Vous découvrirez comment :

  • créer une fonction Cloud Functions simple qui s'abonne à un sujet Cloud Pub/Sub ;
  • créer un sujet Cloud Pub/Sub pour déclencher cette fonction ;
  • créer une tâche Cloud Scheduler qui appelle le déclencheur Cloud Pub/Sub ;
  • exécuter la tâche Cloud Scheduler ;
  • vérifier le bon déroulement de l'opération.

Avant de commencer

Dans ce tutoriel, nous partons du principe que vous avez déjà effectué le Démarrage rapide de Cloud Scheduler. Par conséquent, vous devez déjà disposer des outils et ressources suivants :

  • Un projet GCP avec facturation activée

  • Une application App Engine située dans l'un des emplacements compatibles avec App Engine

  • L'API Cloud Scheduler et l'API Cloud Pub/Sub sont toutes deux activées sur le projet. Vous activerez l'API Cloud Functions au cours de ce tutoriel.

Coûts

Ce tutoriel fait appel à des composants facturables de Cloud Platform, en particulier :

  • Google Cloud Functions
  • Google Cloud Pub/Sub
  • Google Cloud Scheduler

Utilisez le simulateur de coût pour générer une estimation des coûts en fonction de votre utilisation prévue.

Les nouveaux utilisateurs de Cloud Platform peuvent peut-être bénéficier d'un essai gratuit.

Créer une fonction Cloud Functions

  1. Accédez à la page Cloud Functions de la console :

    Accéder à la page Cloud Functions

  2. Cliquez sur le bouton Activer l'API.

  3. Cliquez sur le bouton Créer une fonction.

    image

  4. Attribuez un nom à votre fonction. Acceptez la valeur par défaut pour l'allocation de mémoire.

  5. Sélectionnez Cloud Pub/Sub dans la liste déroulante Trigger (Déclencheur).

  6. Sélectionnez un sujet existant dans le menu déroulant, ou utilisez la fenêtre contextuelle Créer un sujet pour en créer un. Votre fonction est désormais abonnée au sujet. Notez le nom du sujet. Vous en aurez besoin par la suite.

  7. Acceptez les valeurs par défaut pour tout le reste, y compris les exemples de code index.js et package.json.

  8. Cliquez sur Créer.

Créer une tâche Cloud Scheduler

  1. Accédez à la page Cloud Scheduler de la console.

    Accéder à la page Cloud Scheduler

  2. Cliquez sur le bouton Créer une tâche.

  3. Attribuez un nom à votre tâche. Vous pouvez éventuellement ajouter une description.

  4. Spécifiez la fréquence de votre tâche en utilisant le format unix-cron.

    * * * * *
    

    Reportez-vous à la rubrique Configurer les programmations de tâches Cron pour en savoir plus.

  5. Sélectionnez votre fuseau horaire.

  6. Sélectionnez Pub/Sub dans le menu déroulant Cible.

  7. Saisissez le nom du sujet que vous avez sélectionné précédemment.

  8. Ajoutez une brève chaîne de charge utile à envoyer à votre cible.

  9. Cliquez sur Créer.

Vous disposez maintenant d'une tâche Cron qui envoie un message à votre sujet Cloud Pub/Sub toutes les minutes. Votre fonction Cloud Functions est abonnée à ce sujet.

Exécutons la tâche que vous venez de créer.

Exécuter votre tâche

  1. Ouvrez la page Cloud Scheduler de la console.

    Accéder à la page Cloud Scheduler

  2. Cliquez sur le bouton Exécuter.

    La première exécution de la première tâche créée dans un projet peut prendre quelques minutes, étant donné que des opérations de configuration sont requises. Vous devrez peut-être patienter un peu.

  3. Observez la colonne Result (Résultat).

    image

Félicitations ! Vous venez d'utiliser la console pour visualiser les résultats de l'exécution d'une tâche Cron qui envoie un message à Cloud Pub/Sub. Dans la prochaine étape, vous allez découvrir comment vérifier que votre fonction Cloud Functions a bien été exécutée.

Vérifier les résultats dans Cloud Functions

Pour vérifier que votre fonction Cloud Functions est correctement déclenchée par votre tâche Cron :

  1. Accédez à la page Cloud Functions de la console :

    Accéder à la page Cloud Functions

  2. Cliquez sur le nom de la fonction.

    image

  3. La page Function details (Informations sur Function) s'ouvre. Vérifiez les appels de fonction.

    image

    Félicitations ! Votre fonction a été exécutée.

  4. Cliquez sur View logs (Afficher les journaux).

    image

  5. Consultez les détails de l'appel.

    image

Effectuer un nettoyage

Afin d'éviter que des frais ne soient facturés sur votre compte GCP pour les ressources utilisées dans ce tutoriel, procédez comme suit :

Supprimer la tâche Cloud Scheduler

  1. Accédez à la page Cloud Scheduler de la console GCP.

    Accéder à la page Scheduler

  2. Cochez la case située en regard de votre tâche.

  3. Cliquez sur le bouton Supprimer en haut de la page et confirmez la suppression.

Supprimer le sujet Pub/Sub

  1. Accédez à la page Cloud Pub/Sub de la console GCP.

    Accéder à la page Pub/Sub

  2. Cochez la case située en regard de votre sujet.

  3. Cliquez sur le bouton Supprimer en haut de la page et confirmez la suppression.

Supprimer la fonction Cloud Functions

  1. Accédez à la page Cloud Functions de la console GCP.

    Accéder à la page Cloud Functions

  2. Cochez la case située en regard de votre fonction.

  3. Cliquez sur le bouton Supprimer en haut de la page et confirmez la suppression.

Supprimer le projet

Si vous avez créé un projet seulement pour ce tutoriel :

  1. Dans la console GCP, accédez à la page Projets.

    Accéder à la page Projets

  2. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer delete.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Documentation Cloud Scheduler