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.

  • 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 die folgenden kostenpflichtigen Komponenten von Google Cloud verwendet:

  • Cloud Functions
  • Pub/Sub
  • Cloud Scheduler

Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen. Neuen Google Cloud-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.

Cloud-Funktion erstellen

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

    Zu Cloud Functions

  2. Klicken Sie auf API aktivieren.

  3. Klicken Sie auf Funktion erstellen.

    Image

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

  5. Wählen Sie in der Liste Trigger die Option Cloud Pub/Sub aus.

  6. Wählen Sie ein Thema aus der Drop-down-Liste aus oder erstellen Sie im Pop-up-Fenster Neues Thema erstellen ein neues Thema. 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. Rufen Sie in der Google Cloud Console die Seite Cloud Scheduler auf.

    Zu Cloud Scheduler

  2. Klicken Sie auf Job erstellen.

  3. Wählen Sie bei Bedarf eine Region für die Ausführung des Jobs aus.

  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.

    30 16 * * 7
    

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

  6. Wählen Sie Ihre Zeitzone.

  7. Klicken Sie auf Weiter.

  8. Wählen Sie in der Liste Ziel die Option Pub/Sub aus.

  9. Wählen Sie den Namen des Themas aus.

  10. Fügen Sie einen kurzen Nachrichtenstring hinzu, der an Ihr Ziel gesendet werden soll.

  11. Klicken Sie auf Erstellen.

Sie haben jetzt einen Cronjob, der sonntags um 16:30 Uhr eine Nachricht an Ihr Pub/Sub-Thema sendet. Ihre Cloud-Funktion hat dieses Thema abonniert.

Job ausführen

Sie können den erstellten Job jetzt ausführen.

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud Scheduler“ auf.

    Zu Cloud Scheduler

  2. Klicken Sie auf Jetzt erstellen.

    Die Ausführung des ersten in einem Projekt erstellten Jobs kann aufgrund der erforderlichen Konfiguration beim ersten Aufruf einige Minuten dauern.

  3. Sehen Sie sich die Spalte Ergebnis an.

    Bild

Glückwunsch! 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 prüfen Sie, ob die Cloud Functions-Funktion von Ihrem Cronjob erfolgreich ausgelöst wird:

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud Functions.

    Zu Cloud Functions

  2. Klicken Sie auf den Funktionsnamen.

    Image

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

    Image

    Glückwunsch! Ihre Funktion wurde ausgeführt.

  4. Klicken Sie auf Logs ansehen.

    Image

  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. Rufen Sie in der Google Cloud Console die Seite Cloud Scheduler auf.

    Zum Planer

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

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

Pub/Sub-Thema löschen

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

    Zu Pub/Sub

  2. Klicken Sie das Kästchen neben dem Thema an.

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

Cloud Functions-Funktion löschen

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud Functions.

    Zu Cloud Functions

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

  3. Klicken Sie 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 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 Shut down (Beenden), um das Projekt zu löschen.