Mit Pub/Sub eine Cloud Functions-Funktion auslösen

In dieser Anleitung erfahren Sie, wie Sie mit Cloud Scheduler und Pub/Sub eine Cloud Functions-Funktion auslösen. Cloud Scheduler wird häufig dazu verwendet, die Ausführung einer Cloud-Funktion zu planen. Vorgehensweise:

  • Erstellen Sie eine einfache Cloud Functions-Funktion die ein Pub/Sub-Thema abonniert.
  • Erstellen Sie ein Pub/Sub-Thema, um diese Funktion auszulösen.
  • Erstellen Sie einen Cloud Scheduler-Job, der den Pub/Sub-Trigger aufruft.
  • Führen Sie den Cloud Scheduler-Job aus.
  • Prüfen Sie das Ergebnis.

Hinweis

In dieser Anleitung wird davon ausgegangen, dass Sie die Cloud Scheduler-Kurzübersicht bereits durchgearbeitet haben. Daher stehen Ihnen folgende Tools und Ressourcen zur Verfügung:

  • Google Cloud-Projekt mit aktivierter Abrechnungsfunktion.

  • Eine App Engine-Anwendung an einem Standort, der von der App Engine unterstützt wird.

  • Die Cloud Scheduler API und die Pub/Sub API sind beide im Projekt aktiviert. Sie aktivieren die Cloud Functions API während der Anleitung.

Kosten

In dieser Anleitung werden kostenpflichtige Komponenten der Cloud Platform verwendet, darunter:

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

Mit unserem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung erstellen.

Neuen Cloud Platform-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.

Cloud-Funktion erstellen

  1. Gehen Sie in der Konsole zur Seite Cloud Functions:

    Zur Seite "Cloud-Functions"

  2. Klicken Sie auf API aktivieren.

  3. Klicken Sie auf Funktion erstellen.

    Bild

  4. Benennen Sie Ihre Funktion. Akzeptieren Sie die Standard-Speicherzuordnung.

  5. Wählen Sie Cloud Pub/Sub aus dem Drop-down-Menü Trigger aus.

  6. Wählen Sie ein vorhandenes Thema aus der Drop-down-Liste aus oder verwenden Sie das Pop-up-Fenster Neues Thema erstellen, um ein neues Thema zu erstellen. Ihre Funktion hat jetzt das Thema abonniert. Notieren Sie sich den Namen des Themas, denn Sie werden ihn später brauchen.

  7. Für alles andere, einschließlich des Beispiels index.js und des package.json-Codes, akzeptieren Sie die Standardwerte.

  8. Klicken Sie auf Erstellen.

Cloud Scheduler-Job erstellen

  1. Gehen Sie in der Konsole zur Seite Cloud Scheduler:

    Zur Seite "Cloud Scheduler"

  2. Klicken Sie auf Job erstellen.

  3. Wählen Sie bei Bedarf eine Region aus, in der Ihr Job ausgeführt werden soll.

  4. Geben Sie Ihrem Job einen Namen und fügen Sie optional unter "Description" eine Beschreibung hinzu.

  5. Geben Sie die Häufigkeit der Ausführung des Jobs im Format unix-cron an.

    * * * * *
    

    Weitere Informationen finden Sie unter Zeitpläne für Cronjobs konfigurieren.

  6. Wählen Sie Ihre Zeitzone aus.

  7. Wählen Sie in der Drop-down-Liste Ziel die Option Pub/Sub aus.

  8. Geben Sie den Namen des Themas ein, das Sie oben ausgewählt haben.

  9. Fügen Sie einen kurzen Payload-String hinzu, der an Ihr Ziel gesendet werden soll.

  10. Klicken Sie auf Erstellen.

Sie haben jetzt einen Cronjob, der jede Minute eine Nachricht an Ihr Pub/Sub-Thema sendet. Ihre Cloud-Funktion hat dieses Thema abonniert.

Der Job kann jetzt ausgeführt werden.

Job ausführen

  1. Besuchen Sie in der Konsole die Seite "Cloud Scheduler".

    Zur Seite "Cloud Scheduler"

  2. Klicken Sie auf Jetzt ausführen.

    Die Ausführung des ersten in einem Projekt erstellten Jobs kann aufgrund der erforderlichen Konfiguration beim ersten Aufruf einige Minuten dauern. Sie müssen unter Umständen etwas warten.

  3. Sehen Sie sich die Spalte Ergebnis an.

    Bild

Das wars! Sie haben gerade die Console verwendet, um die Ergebnisse der Ausführung eines Cronjobs anzuzeigen, der eine Nachricht an Pub/Sub sendet. Im nächsten Schritt prüfen Sie, ob Cloud Pub/Sub tatsächlich ausgeführt wurde.

Überprüfen Sie die Ergebnisse in Cloud Functions:

So überprüfen Sie, ob Ihre Cloud-Funktion erfolgreich von Ihrem Cronjob ausgelöst wird:

  1. Gehen Sie in der Konsole zur Seite Cloud Functions:

    Zur Seite "Cloud-Functions"

  2. Klicken Sie auf den Funktionsnamen.

    Bild

  3. Die Seite Funktionsdetails wird geöffnet. Überprüfen Sie die Aufrufe.

    Bild

    Das wars! Ihre Funktion wurde ausgeführt.

  4. Klicken Sie auf Logs ansehen.

    Bild

  5. Hier sehen Sie die Details zum Aufruf.

    Bild

Clean-up

So vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

Cloud Scheduler-Job löschen

  1. Wechseln Sie in der Cloud Console zur Seite Cloud Scheduler.

    Zur Seite "Scheduler"

  2. Klicken Sie auf das Kästchen neben Ihrem Job.

  3. Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.

Pub/Sub-Thema löschen

  1. Rufen Sie in der Cloud Console die Seite Cloud Pub/Sub auf.

    Zur Seite "Pub/Sub"

  2. Klicken Sie auf das Kästchen neben Ihrem Thema.

  3. Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.

Cloud Functions-Funktion löschen

  1. Rufen Sie in der Cloud Console die Seite Cloud Functions auf.

    Zur Seite Cloud Functions

  2. Klicken Sie das Kästchen neben Ihrer Funktion an.

  3. Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.

Projekt löschen

Löschen Sie das Projekt, das Sie nur für diese Anleitung erstellt haben.

  1. Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite "Ressourcen verwalten"

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen .
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.