Export über die Loganzeige

Auf dieser Seite wird erläutert, wie Sie Logeinträge mit der Cloud Console exportieren. Sie können Logeinträge auch mit der Cloud Logging API oder dem gcloud logging-Befehlszeilentool exportieren.

Eine konzeptionelle Übersicht über das Exportieren von Logs in Logging finden Sie in der Übersicht über Logexporte. Kurz gesagt exportieren Sie Logs, indem Sie mindestens eine Senke erstellen, die eine Logabfrage und ein Exportziel enthält. Neu in Cloud Logging empfangene Logeinträge werden mit jeder Senke verglichen. Wenn ein Logeintrag mit der Abfrage einer Senke übereinstimmt, wird eine Kopie des Logeintrags in das Exportziel geschrieben.

Unterstützte Ziele für exportierte Logeinträge sind Cloud Storage, BigQuery und Pub/Sub.

Informationen zum Formatieren und Organisieren sowie zum Ansehen der exportierten Logs finden Sie unter Exportierte Logs verwenden.

Hinweise

  • Projekt: Sie benötigen ein Google Cloud-Projekt mit Logs, die Sie in der Loganzeige sehen können.

    Zum Erstellen, Löschen oder Ändern einer Senke muss Ihnen im Projekt die Cloud IAM-Rolle Inhaber oder Logging/Autor von Logkonfigurationen zugewiesen sein. Weitere Informationen finden Sie unter Berechtigungen und Rollen.

  • Zieldienst: Zum Exportieren von Logs müssen Sie sich für den Google Cloud-Dienst registrieren, in den Sie die Logs schreiben möchten: Cloud Storage, BigQuery oder Pub/Sub.

Einstieg

  1. Wechseln Sie in der Cloud Console zu Cloud Logging > Logs Router:

    Zu Logs Router

  2. Wählen Sie oben auf der Seite ein vorhandenes Google Cloud-Projekt aus.

Im folgenden Screenshot ist ein Beispiel für die Seite Logs Router zu sehen, in der mehrere Logsenken bereits konfiguriert sind

Benutzeroberfläche mit der Exportliste

Wenn Sie noch keine Logsenken konfiguriert haben, wird die Meldung Es sind keine Logsenken konfiguriert angezeigt.

Logs Router-Benutzeroberfläche

Die Oberfläche Logs Router enthält eine tabellarische Zusammenfassung der Exporte. Jede Tabellenzeile enthält Informationen zu einigen der in Logexporte beschriebenen Senkenattribute:

  • Name der Senke: Die Senken-ID im aktuellen Projekt.
  • Ziel: Das Ziel, in das die exportierten Logeinträge geschrieben werden.
  • Identität des Autors: Das Dienstkonto, das in Logging zum Schreiben von Logeinträgen an das Ziel verwendet wird. Dieses Dienstkonto benötigt Schreibberechtigungen für das Exportziel der Senke.

In jeder Tabellenzeile befindet sich ganz rechts ein Dreipunkt-Menü  mit folgenden Optionen:

  • Senke bearbeiten: Öffnet das Fenster Senke bearbeiten, in dem Sie die Parameter der Senke ändern können.
  • Senke löschen: Ermöglicht das Löschen der Senke und das Beenden des Logexports.
  • Senkendetails ansehen: Zeigt die Abfrage der Senke an. Wenn Sie auf Bearbeiten klicken, können Sie die Attribute oder Abfrage der Senke ändern.

Über das Suchanfragefeld über der Tabelle können Sie Ihre Senken nach Text oder diesen Senkenattributen abfragen: Name der Senke, Ziel und Identität des Autors. Der folgende Screenshot zeigt zum Beispiel eine Suche nach dem Ziel bigquery sowie Optionen zum Verketten mit anderen Senkenattributen über das Argument OR (AND ist der Standardwert):

Benutzeroberfläche mit einer Suchanfrage

Die Daten können zusätzlich in ab- oder aufsteigender Reihenfolge sortiert werden. Klicken Sie dazu auf den jeweiligen Spaltennamen. Am unteren Ende der Tabelle können Sie außerdem die Anzahl der Zeilen auswählen, die angezeigt werden sollen.

Senken erstellen

Klicken Sie zum Erstellen einer Exportsenke oben auf der Seite Logs Router auf Senke erstellen. Dies ist auch oben auf der Seite "Loganzeige" möglich.

Wenn Ihrem Dienstkonto die Berechtigung zum Erstellen von Exporten für das Projekt fehlt, ist diese Option nicht verfügbar. Weitere Informationen finden Sie weiter oben unter Hinweise.

Der folgende Screenshot zeigt den Bereich Senke bearbeiten mit einigen ausgefüllten Feldern:

Benutzeroberfläche mit dem Bearbeitungsfeld für Exporte

Um eine Senke zu erstellen, füllen Sie das Feld Senke bearbeiten so aus:

  1. (Filter): Geben Sie eine erweiterte Logabfrage ein. Die Abfrage muss nicht in Anführungszeichen gesetzt werden und Sie können mehrere Zeilen verwenden. Die anfängliche Abfrage wird durch die Logeinträge bestimmt, die angezeigt werden, wenn Sie auf Export erstellen klicken.

    Klicken Sie nach dem Bearbeiten der Abfrage immer auf Abfrage senden, um die übereinstimmenden Logeinträge zu sehen. Klicken Sie auf Zu den neuesten Logs springen, um die neuesten Logs abzurufen.

    Wenn Sie die Logs über die einfache Anzeigeoberfläche auswählen möchten, verwenden Sie das Drop-down-Menü  im Suchanfragefeld.

  2. Senkenname: Geben Sie die Kennzeichnung für die Senke ein.

  3. Senkendienst: Wählen Sie einen Zieldienst aus: Cloud Storage, Pub/Sub, BigQuery oder Benutzerdefiniertes Ziel.

    Auch ein benutzerdefiniertes Exportziel muss sich in Cloud Storage, BigQuery oder Pub/Sub befinden. Sie können jedoch Logs an eine Senke in einem anderen Google Cloud-Projekt senden. Die Quelle der Senke und das Ziel müssen nicht in derselben Google Cloud-Organisation sein.

  4. Senkenziel:

    1. Cloud Storage: Wählen Sie den spezifischen Bucket aus, der die exportierten Logs erhalten soll, oder erstellen Sie ihn.
    2. Pub/Sub: Wählen Sie das spezifische Thema aus, das die exportierten Logs erhalten soll, oder erstellen Sie es.
    3. BigQuery: Wählen Sie das spezifische Dataset aus, das die exportierten Logs erhalten soll, oder erstellen Sie es. Sie können auch partitionierte Tabellen verwenden.
    4. Benutzerdefiniertes Ziel: Fügen Sie das Google Cloud-Projekt in Cloud Storage, Pub/Sub oder BigQuery als String hinzu. Informationen zur Formatierung von Projektnamen finden Sie unter Senkenattribute.
  5. Klicken Sie auf Senke aktualisieren, um die Senke zu erstellen.

    In Logging wird beim Erstellen der Senke versucht, zum Schreiben an das Ziel die Senkenberechtigung "Identität des Autors" zu gewähren. Wenn Sie an ein Ziel in einem Projekt exportieren, das nicht Inhaber Ihrer Logs ist, muss die Berechtigung von einem Administrator des neuen Ziels erteilt werden. Senden Sie dem Administrator die Autorenidentität der Senke. Diese ist auf der Seite Router zur Senke angegeben.

Der Export neuer Logeinträge entsprechend der Senke beginnt. Logeinträge für BigQuery oder Pub/Sub werden sofort an diese Exportziele gestreamt. Logeinträge für Cloud Storage werden in Batches zusammengefasst und etwa jede Stunde gesendet. Weitere Informationen finden Sie unter Exportierte Logs verwenden.

Wenn in Logging beim Exportieren von Logs an das Exportziel Fehler auftreten, werden diese im Aktivitäten-Stream des Projekts angezeigt. Wählen Sie in der Google Cloud Console oben auf der Startseite Ihres Projekts Aktivität aus. Informationen zur Diagnose gängiger Fehler finden Sie unten unter Fehlerbehebung.

Senken aktualisieren

Zum Aktualisieren einer Senke wählen Sie im Dreipunkt-Menü  rechts neben dem Namen der Senke den Befehl Senke bearbeiten aus. Sie können die folgenden Parameter ändern:

  • Ziel
  • Abfrage

Andere Parameter der Senken ändern Sie mit der API-Methode projects.sinks.update.

Senken löschen

Zum Löschen einer Senke wählen Sie die Senke auf der Seite Router aus. Klicken Sie dann oben auf der Seite auf Löschen. Alternativ können Sie im Dreipunkt-Menü  rechts neben dem Namen der Senke Senke löschen auswählen.

Zielberechtigungen

In diesem Abschnitt wird beschrieben, wie Sie Logging die IAM-Berechtigungen (Cloud Identity and Access Management) zum Schreiben exportierter Logs an das Exportziel der Senke gewähren.

Wenn Sie eine Senke erstellen, wird in Logging ein neues Dienstkonto für die Senke erstellt. Dieses wird als unique-writer-identity bezeichnet. Sie können dieses Dienstkonto nicht direkt verwalten, da es Cloud Logging gehört und von diesem verwaltet wird. Das Dienstkonto wird gelöscht, wenn die Senke gelöscht wird.

Das Exportziel muss diesem Dienstkonto das Schreiben von Logeinträgen erlauben. Richten Sie diese Berechtigung mit den folgenden Schritten ein:

  1. Erstellen Sie die neue Senke in der Cloud Console, dem gcloud logging-Befehlszeilentool oder der Logging API.

  2. Wenn Sie Ihre Senke in der Cloud Console erstellt und mit der Rolle Inhaber Zugriff auf das Ziel haben, sollte Cloud Logging die erforderlichen Berechtigungen für Sie eingerichtet haben. In diesem Fall ist der Vorgang für Sie abgeschlossen. Andernfalls fahren Sie fort.

  3. Rufen Sie von der neuen Senke die Autorenidentität in Form einer E-Mail-Adresse ab:

    • Wenn Sie die Cloud Console verwenden, wird die Identität des Autors in der Senkenliste auf der Seite Router angezeigt.
    • In der Logging API können Sie die Identität des Autors aus dem Objekt "LogSink" abrufen.
    • Wenn Sie gcloud logging verwenden, werden die Identitäten des Autors angezeigt, wenn Sie Ihre Senken auflisten.
  4. Wenn Sie die Rolle Inhaber für das Ziel haben, fügen Sie dem Ziel das Dienstkonto so hinzu:

    • Bei Verwendung von Cloud Storage-Zielen nehmen Sie die Identität des Autors der Senke in den Bucket auf und weisen ihr die Rolle Storage-Objekt-Ersteller zu.
    • Wenn Sie BigQuery-Ziele verwenden, fügen Sie die Autorenidentität der Senke dem Dataset hinzu und weisen ihr die Rolle BigQuery-Dateneditor zu.
    • Wenn Sie Pub/Sub-Ziele verwenden, fügen Sie die Autorenidentität der Senke dem Thema hinzu und weisen ihr die Rolle Pub/Sub-Publisher zu.

    Damit ist die Autorisierung abgeschlossen.

  5. Wenn Sie nicht die Rolle Inhaber für das Exportziel haben, senden Sie den Namen des Dienstkontos für die Autorenidentität einem Nutzer mit dieser Rolle zu. Bitten Sie die betreffende Person, die vorangegangenen Schritte auszuführen, um dem Exportziel die Autorenidentität hinzuzufügen.

Verzögerungen bei der Autorisierung

Wenn beim Export eines Logeintrags durch eine Senke nicht die erforderliche Cloud IAM-Berechtigung für das Exportziel vorhanden ist, wird ein Fehler ausgegeben und der Logeintrag wird übersprungen. Dies wird bis zur Erteilung der Berechtigung fortgesetzt. Anschließend werden von der Senke neue Logeinträge exportiert.

Zwischen dem Erstellen der Senke und dem Gewähren der Schreibberechtigung für das Exportziel mithilfe des neuen Dienstkontos der Senke kommt es zu einer Verzögerung. Während der ersten 24 Stunden nach Erstellen der Senke werden auf der Seite Aktivität Ihres Projekts möglicherweise Fehlermeldungen im Hinblick auf Berechtigungen von der Senke angezeigt. Sie können diese ignorieren.

Vorteile und Einschränkungen

Die Cloud Console bietet gegenüber der Logging API die folgenden Vorteile:

  • In der Cloud Console werden alle Senken an einem Ort angezeigt.
  • In der Cloud Console sehen Sie, welche Logeinträge Ihrer Senkenabfrage entsprechen, bevor Sie eine Senke erstellen.
  • Die Cloud Console kann Exportziele für Ihre Senken erstellen und autorisieren.

Die Cloud Console kann jedoch nur Senken in Projekten erstellen oder anzeigen. Informationen zum Erstellen von Senken in Organisationen, Ordnern oder Rechnungskonten finden Sie unter Aggregierte Exporte.

Fehlerbehebung

Nachfolgend sind einige gängige Probleme und deren Behebung aufgeführt, die beim Exportieren von Logs auftreten können:

  • Zielbezogene Fehler: Prüfen Sie die Angabe des Exportziels in der Senke. Ermitteln Sie mit projects.sinks.get die Identität des Autors der Senke und prüfen Sie, ob diese Identität Schreibzugriff auf Ihr Exportziel hat.

  • Es werden keine Logs exportiert: Hier einige mögliche Gründe:

    • Ihre Abfrage ist falsch. Prüfen Sie Ihre Exportabfrage, um zu ermitteln, ob Logeinträge, die Ihrer Abfrage entsprechen, kürzlich in Logging angekommen sind. Korrigieren Sie Rechtschreibfehler oder Formatierungsfehler.

    • Seit dem Erstellen oder Aktualisieren der Senke wurden keine übereinstimmenden Logeinträge empfangen. Es werden nur neue Logeinträge exportiert.

      Exportierte Logs werden am Ziel mit einer gewissen Verzögerung angezeigt. Dies gilt insbesondere für Cloud Storage-Ziele. Weitere Informationen finden Sie unter Verfügbarkeit von exportierten Logs.

      Sie können auch die Systemmesswerte für den Export prüfen. Die Systemmesswerte für den Export geben darüber Aufschluss, wie viele Logeinträge exportiert und wie viele Logeinträge aufgrund von Fehlern gelöscht wurden.

Der Logexport beginnt, sobald die Fehler behoben sind.

Gehen Sie so vor, um Senkenfehler mit der Loganzeige anzusehen:

  1. Rufen Sie den Aktivitäten-Stream für das Projekt oder die Ressource auf, für die die Senke erstellt wurde:

    Zum Aktivitäten-Stream

  2. Wählen Sie im Bereich Filter die Option Aktivitätstypen > Konfiguration und Ressourcentyp > Logging-Exportsenke aus.

  3. Passen Sie Date/time an, um Senkenfehler für den entsprechenden Zeitraum anzusehen.

    Die Senkenfehler werden angezeigt.

In den folgenden Abschnitten werden einige dienstspezifische mögliche Fehler und unerwartete Ergebnisse aufgeführt. Außerdem wird erläutert, wie Sie sie beheben können.

Fehler beim Exportieren nach Cloud Storage

In der folgenden Tabelle sind die häufigsten Fehler aufgeführt, die beim Exportieren von Logs in Cloud Storage auftreten:

Error Ursache Lösung
Gemäß den Berechtigungen für den Bucket [YOUR_BUCKET] darf die Loggruppe keine neuen Objekte erstellen. Die Identität des Autors der Senke hat nicht die entsprechenden Berechtigungen für den Bucket. Fügen Sie dem Bucket die erforderlichen Berechtigungen hinzu oder geben Sie einen anderen Bucket für die Senke an. Weitere Informationen erhalten Sie im Abschnitt zu Zielberechtigungen.
Es ist kein Bucket namens [YOUR_BUCKET] vorhanden. Der Bucket-Name enthält möglicherweise einen Fehler oder der Bucket wurde gelöscht. Geben Sie den richtigen Ziel-Bucket-Namen für die Senke an.
Senke erfolgreich erstellt. Dem Ziel konnten jedoch nicht die richtigen Berechtigungen zugewiesen werden. Für das Zugriffssteuerungsmodell des Buckets wurde bei dessen Erstellung Einheitlich festgelegt.

(Diese Fehlermeldung wird nach dem Einfügen des Dienstkontos weiterhin angezeigt.)
Wählen Sie während der Bucket-Erstellung das Zugriffssteuerungsmodell Detailgenau aus. Für vorhandene Buckets können Sie das Zugriffssteuerungsmodell in den ersten 90 Tagen nach der Bucket-Erstellung über den Tab Berechtigungen ändern.

Fehler beim Exportieren nach BigQuery

In der folgenden Tabelle sind die häufigsten Fehler aufgeführt, die beim Exportieren von Logs nach BigQuery auftreten:

Error Ursache Lösung
Gemäß den Berechtigungen für das Dataset [YOUR_DATASET] darf die Loggruppe keine neuen Tabellen erstellen. Die Identität des Autors der Senke hat nicht die erforderlichen Berechtigungen für das Dataset. Fügen Sie dem Dataset die Berechtigung hinzu. Weitere Informationen erhalten Sie im Abschnitt zu Zielberechtigungen.
Es wurde kein Dataset namens [YOUR_DATASET] gefunden. Möglicherweise liegt ein Fehler im Ziel der Senke vor oder das Dataset wurde gelöscht. Erstellen Sie entweder das Dataset neu oder geben Sie ein anderes Ziel-Dataset für die Senke an.
Logs, die in die Tabelle [YOUR_TABLE] im Dataset [YOUR_DATASET] gestreamt wurden, entsprechen nicht dem Tabellenschema. Die zu exportierenden Logs sind nicht mit dem Schema der aktuellen Tabelle kompatibel. Achten Sie darauf, dass Ihre Log-Einträge dem Schema der Tabelle entsprechen. Ein häufiges Problem ist das Senden von Log-Einträgen mit verschiedenen Datentypen. Beispiel: Eines der Felder im Logeintrag ist eine ganze Zahl, eine entsprechende Spalte im Schema hat jedoch einen Stringtyp. Der Aktivitäten-Stream enthält einen Link zu einem der ungültigen Log-Einträge. Nachdem Sie die Fehlerquelle beseitigt haben, können Sie Ihre aktuelle Tabelle umbenennen und Logging die Tabelle noch einmal erstellen lassen.
Das Einfügekontingent für tabellenbasiertes Streaming wurde für die Tabelle [YOUR_TABLE] im Dataset [YOUR_DATASET] überschritten. Es werden zu viele Logdaten zu schnell exportiert. Die für das Logstreaming geltenden Kontingente finden Sie unter Kontingente und Limits. Verringern Sie die Menge der Logdaten, die von Ihrer Senke erzeugt werden. Sie können die Abfrage der Senke so aktualisieren, dass sie mit weniger Logeinträgen übereinstimmt, oder die sample()-Funktion verwenden.
An die partitionierte Tabelle [IHRE TABELLE] gestreamte Logs liegen außerhalb der zulässigen zeitlichen Grenzen. BigQuery akzeptiert keine Logs, die zu weit in der Vergangenheit oder Zukunft liegen. Logs außerhalb der zulässigen Zeitgrenzen können nicht mit Senken exportiert werden. Sie können diese Logs nach Cloud Storage exportieren und stattdessen einen BigQuery-Ladejob verwenden. Weitere Informationen finden Sie in der BigQuery-Dokumentation.
Logs können nicht in das Dataset [YOUR_DATASET] gestreamt werden, da dieser Vorgang laut einer entsprechenden Organisationsrichtlinie unzulässig ist. Es existiert eine Organisationsrichtlinie, die Schreibvorgänge für das ausgewählte Dataset verhindert. Weitere Informationen zu Organisationsrichtlinien finden Sie in der Dokumentation. Ändern Sie Ihre Exportsenke und verwenden Sie ein konformes Dataset.

Fehler beim Exportieren von Logs nach Pub/Sub

In der folgenden Tabelle sind die häufigsten Fehler aufgeführt, die beim Exportieren von Logs nach Pub/Sub auftreten:

Error Ursache Lösung
[ACCOUNT] benötigt für [PROJECT] Bearbeitungsberechtigungen, um in [TOPIC] zu veröffentlichen. Die Identität des Autors der Senke hat nicht die entsprechenden Berechtigungen für das Thema. Fügen Sie dem Projekt die erforderlichen Berechtigungen hinzu. Weitere Informationen erhalten Sie im Abschnitt zu Zielberechtigungen.
Das Thema [TOPIC] existiert nicht. Möglicherweise haben Sie das für den Empfang Ihrer exportierten Logs konfigurierte Thema gelöscht. Erstellen Sie entweder das Thema mit demselben Namen noch einmal oder richten Sie in der Exportkonfiguration ein anderes Thema als Ziel für den Logexport ein.

Nächste Schritte