Ausführungen überwachen

Dieses Dokument enthält Anleitungen für folgende Aufgaben:

Hinweise

So überwachen Sie Ausführungsprotokolle:

  1. Öffnen Sie in der Google Cloud Console die Seite Dataform.

    Zu Dataform

  2. Wählen Sie ein Repository aus oder erstellen Sie ein neues.

  3. Wählen Sie einen Entwicklungsarbeitsbereich aus oder erstellen Sie einen.

  4. Triggerausführung mindestens einmal.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Dataform Editor (roles/dataform.editor) für das Repository „workflowInvocations“ zuzuweisen, damit Sie die Berechtigungen erhalten, die Sie zum Aufrufen von Ausführungsprotokollen benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Die IAM-Rolle Log-Betrachter (roles/logging.viewer) bietet Lesezugriff auf alle Funktionen von Cloud Logging. Weitere Informationen zu den Berechtigungen und Rollen von Identity and Access Management (IAM), die für Logging-Daten gelten, finden Sie unter Zugriffssteuerung mit IAM.

Damit Sie logbasierte Benachrichtigungen erstellen und verwalten können, muss Ihre IAM-Rolle die Berechtigungen enthalten, die unter Rollen, die zum Erstellen und Verwenden von Richtlinien für logbasierte Benachrichtigungen erforderlich sind beschrieben sind.

Ausführungsprotokolle überwachen

In diesem Abschnitt erfahren Sie, wie Sie Ausführungslogs in Dataform aufrufen.

Sie können sich die Protokolle aller Ausführungen ansehen, die in einem Repository ausgelöst wurden, sowie die Protokolle der Ausführungen, die in einem Arbeitsbereich in den letzten 24 Stunden ausgelöst wurden.

Ausführungsprotokolle des Repositories prüfen

So rufen Sie die Logs aller in einem Repository ausgelösten Ausführungen auf:

  1. Öffnen Sie in der Google Cloud Console die Seite Dataform.

    Zu Dataform

  2. Rufen Sie Ihr Repository auf.

  3. Klicken Sie auf Workflow-Ausführungslogs.

  4. Klicken Sie auf die Ausführung, um die Details aufzurufen.

  5. Klicken Sie auf Details ansehen, um die Details einer Aktion innerhalb der Ausführung aufzurufen.

Ausführungsprotokolle für Workspace prüfen

So rufen Sie die Protokolle der 1.000 letzten Ausführungen auf, die in einem Arbeitsbereich in den letzten 24 Stunden ausgelöst wurden:

  1. Öffnen Sie in der Google Cloud Console die Seite Dataform.

    Zu Dataform

  2. Rufen Sie Ihr Repository auf und wählen Sie Ihren Arbeitsbereich aus.

  3. Klicken Sie in Ihrem Arbeitsbereich auf Ausführungen.

  4. Klicken Sie auf die Ausführung, um Details zu sehen.

  5. Klicken Sie auf Details ansehen, um Details zu einer Aktion innerhalb der Ausführung aufzurufen.

Logging-Logs für Dataform aufrufen

In diesem Abschnitt erfahren Sie, wie Sie Cloud Logging-Logs für Dataform-Workflowaufrufe aufrufen.

Jede Aufrufung eines Dataform-Workflows wird mit Logging protokolliert. Das Logging wird automatisch für Dataform-Workflowaufrufe aktiviert. Dies kann zu Abrechnungskosten für Logging führen. Weitere Informationen finden Sie unter Dataform-Preise.

Logs ansehen

Informationen zum Filtern von Protokollen im Log-Explorer finden Sie unter Logs mit dem Log-Explorer ansehen.

Dataform-Protokolle werden vom Dataform-Repository indexiert.

Logformat

Dataform sendet Protokollmeldungen zur Workflowausführung im folgenden Format:

{
  "insertId": "14ip1tza5",
  "jsonPayload": {
    "terminalState": "SUCCEEDED",
    "workflowInvocationId": "1678383230-ac4ed48c-eb70-4555-b2b0-cda54d13edfa",
    "@type": "type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry"
  },
  "resource": {
    "type": "dataform.googleapis.com/Repository",
    "labels": {
      "repository_id": "repository-name-example",
      "resource_container": "PROJECT_ID",
      "location": "us-central1"
    }
  },
  "timestamp": "2023-03-09T17:34:06.965981805Z",
  "severity": "INFO",
  "logName": "projects/project-name-example/logs/dataform.googleapis.com%2Fworkflow_invocation_completion",
  "receiveTimestamp": "2023-03-09T17:34:07.362371980Z"
}

Was wird protokolliert?

Dataform-Logeinträge enthalten Informationen, die für das Monitoring und die Fehlerbehebung bei Workflowaufrufen nützlich sind.

Folgende Informationen sind in Ihnen enthalten:

  • receiveTimestamp
  • release_config_id
  • repository_id
  • resource_container
  • workflow_invocation_id
  • workflow_config_id
  • severity: kann INFO, WARNING oder ERROR sein.
  • terminalState: kann SUCCEEDED, CANCELED oder FAILED sein.
  • timestamp
  • @type

Messwerte und Benachrichtigungen mit Cloud Monitoring konfigurieren

Mit Monitoring können Sie Trends in Ihren Logs beobachten und sich benachrichtigen lassen, wenn von Ihnen beschriebene Bedingungen auftreten.

Um Monitoring Daten aus Ihren Logs bereitzustellen bietet Logging:

  • Logbasierte Messwerte, die für folgende Zwecke verwendet werden können:
    • Zum Erstellen von Benachrichtigungsrichtlinien, die Sie über Änderungen im Laufe der Zeit benachrichtigen.
    • Zum Erstellen von Diagrammen, die Änderungen im Zeitverlauf darstellen.
  • Logbasierte Benachrichtigungen, die Sie informieren, sobald ein bestimmtes Ereignis in einem Log auftaucht.

Weitere Informationen zu logbasierten Messwerten und logbasierten Benachrichtigungen finden Sie unter Logs überwachen.

Informationen zum Konfigurieren von logbasierten Benachrichtigungen für Dataform-Workflowaufrufe finden Sie unter Benachrichtigungen für fehlgeschlagene Workflowaufrufe konfigurieren.

Benachrichtigungen für fehlgeschlagene Workflowaufrufe konfigurieren

In diesem Abschnitt erfahren Sie, wie Sie mit dem Log-Explorer logbasierte Benachrichtigungen für fehlgeschlagene Dataform-Workflowaufrufe konfigurieren.

Mit Monitoring können Sie Trends in Logging-Logs für Dataform-Workflowaufrufe beobachten und sich benachrichtigen lassen, wenn von Ihnen beschriebene Bedingungen auftreten.

Jede Aufrufung eines Dataform-Workflows wird mit Logging protokolliert. Das Logging wird automatisch für Dataform-Workflowaufrufe aktiviert. Dies kann zu Abrechnungskosten für Logging führen. Weitere Informationen finden Sie unter Dataform-Preise.

Wenn Sie Benachrichtigungen erhalten möchten, wenn eine Dataform-Workflowausführung fehlschlägt, können Sie protokollbasierte Benachrichtigungen erstellen.

Sie können logbasierte Benachrichtigungen auf der Seite Log-Explorer in der Google Cloud Console oder mithilfe der Monitoring API erstellen. In diesem Abschnitt wird beschrieben, wie Sie mit dem Log-Explorer logbasierte Benachrichtigungen für Fehler bei der Workflowausführung von Dataform erstellen.

So konfigurieren Sie logbasierte Benachrichtigungen für fehlgeschlagene Dataform-Workflowaufrufe:

  1. Wählen Sie in der Google Cloud Console Logging und dann Log-Explorer aus.

    Zum Log-Explorer

  2. Wählen Sie im Bereich Abfrage die Option Abfrage anzeigen aus und geben Sie die folgende Abfrage ein:

        resource.type="dataform.googleapis.com/Repository"
        jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry"
        jsonPayload.terminalState="FAILED"
     

    Mit dieser Abfrage werden Sie über alle fehlgeschlagenen Dataform-Workflowaufrufe informiert.

    1. Optional: Wenn Sie fehlgeschlagene Workflowaufrufe nach einer Release-Konfiguration filtern möchten, fügen Sie der Abfrage Folgendes hinzu:

          jsonPayload.releaseConfigId="RELEASE_CONFIGURATION_ID"
      

      Ersetzen Sie RELEASE_CONFIGURATION_ID durch die ID der Release-Konfiguration.

    2. Optional: Wenn Sie fehlgeschlagene Workflowaufrufe nach einer Workflowkonfiguration filtern möchten, fügen Sie der Abfrage Folgendes hinzu:

          jsonPayload.workflowConfigId="WORKFLOW_CONFIGURATION_ID"
      

      Ersetzen Sie WORKFLOW_CONFIGURATION_ID durch die ID der Workflowkonfiguration.

    Mit der folgenden Abfrage werden Sie benachrichtigt, wenn eine Dataform-Workflowausführung, die sowohl mit der daily-Releasekonfiguration als auch mit der production-Workflowkonfiguration verknüpft ist, fehlschlägt:

     resource.type="dataform.googleapis.com/Repository"
     jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry"
     jsonPayload.terminalState="FAILED"
     jsonPayload.releaseConfigId="daily"
     jsonPayload.workflowConfigId="production"
    
  3. Optional: Verwenden Sie Abfrage ausführen im Bereich Abfrageergebnisse, um die Abfrage zu validieren.

  4. Klicken Sie in der Kopfzeile des Bereichs Abfrageergebnisse auf Benachrichtigung erstellen. Wenn das Fenster schmal ist, wird die Option Benachrichtigung erstellen möglicherweise stattdessen im Menü Aktionen angezeigt.

  5. Geben Sie im Bereich Benachrichtigungsdetails einen Namen und eine Beschreibung für die Benachrichtigung ein:

    1. Geben Sie im Feld Benachrichtigungsname einen Namen für die Benachrichtigung ein. Beispiel: Dataform: workflow failure.

    2. Geben Sie eine Beschreibung dieser Benachrichtigung ein. Sie können auch Informationen angeben, die dem Empfänger einer Benachrichtigung helfen können, das Problem zu diagnostizieren. Im folgenden String wird der Grund für die Benachrichtigung zusammengefasst:

      Log-based alert in project ${project} detected a failed Dataform workflow.
      

      Informationen zum Formatieren und Anpassen des Inhalts dieses Felds finden Sie unter Benachrichtigungen mit benutzerdefinierter Dokumentation ergänzen.

  6. Um mit dem nächsten Schritt fortzufahren, klicken Sie auf Weiter.

  7. Prüfen Sie im Bereich Logs auswählen, die in die Benachrichtigung aufgenommen werden sollen die Abfrage und die Ergebnisse. Klicken Sie dazu auf Logvorschau ansehen.

    Wir empfehlen, die Abfrage im Bereich Abfrage des Log-Explorers zu erstellen. Die Abfrage, die Sie im Bereich Abfrage erstellt haben, wird in diesem Bereich ebenfalls angezeigt.

    Bei Bedarf können Sie die Abfrage in diesem Bereich bearbeiten. Wenn Sie die Abfrage bearbeiten, prüfen Sie die Ergebnisse. Klicken Sie dazu auf Logvorschau ansehen.

  8. Klicken Sie auf Weiter.

  9. Wählen Sie die Mindestdauer zwischen Benachrichtigungen aus. Mit diesem Wert können Sie die Anzahl der Benachrichtigungen dieser Art steuern, wenn sie mehrmals ausgelöst wird. Wählen Sie für dieses Beispiel 5 Min. aus den Optionen aus.

  10. Optional: Wählen Sie die Dauer bis zur automatischen Schließung von Vorfällen aus. Standardmäßig ist die Dauer für die automatische Schließung von Vorfällen auf 7 Tage festgelegt.

  11. Klicken Sie auf Weiter.

  12. Wählen Sie einen oder mehrere Benachrichtigungskanäle für Ihre Benachrichtigung aus. Wählen Sie für dieses Beispiel einen E-Mail-Benachrichtigungskanal aus.

    Wenn Sie bereits einen E-Mail-Benachrichtigungskanal konfiguriert haben, können Sie ihn aus der Liste auswählen. Wenn nicht, klicken Sie auf Benachrichtigungskanäle verwalten und fügen Sie einen E-Mail-Kanal hinzu. Informationen zum Erstellen von Benachrichtigungskanälen finden Sie unter Benachrichtigungskanäle erstellen und verwalten.

  13. Klicken Sie auf Speichern.

Ihre logbasierte Benachrichtigung kann jetzt getestet werden. Eine Anleitung zum Testen der Benachrichtigung finden Sie unter Logbasierte Beispielbenachrichtigung testen.

Nächste Schritte