Logs an unterstützte Ziele weiterleiten

In diesem Dokument wird erläutert, wie Sie Logsenken erstellen und verwalten, mit denen Logeinträge, die in einem Google Cloud Projekt generiert werden, an unterstützte Ziele weitergeleitet werden.

Eine Senke führt eine Schreibaktion aus und muss daher zum Schreiben in das Ziel autorisiert sein. Wenn das Ziel ein Log-Bucket im selben Projekt wie die Senke ist, wird die Senke automatisch autorisiert. Für alle anderen Ziele muss die Senke an ein Dienstkonto angehängt werden, dem die Berechtigungen zum Schreiben von Daten in das Ziel erteilt wurden.

Wenn ein Dienstkonto erforderlich ist, wird es von Cloud Logging automatisch erstellt und verwaltet. Möglicherweise müssen Sie jedoch die dem Dienstkonto gewährten Berechtigungen ändern. Sie müssen nicht das von Logging erstellte Dienstkonto verwenden. Sie können ein Dienstkonto erstellen und verwalten, das von Senken in mehreren Projekten verwendet wird. Weitere Informationen finden Sie unter Logsinks mit vom Nutzer verwalteten Dienstkonten konfigurieren.

Übersicht

Auf dieser Seite wird beschrieben, wie Sie einen Senken erstellen und die Optionen konfigurieren, die bei Verwendung der Google Cloud Console oder der API angezeigt werden.

Senken gehören zu einer bestimmten Google Cloud Ressource: einem Google Cloud Projekt, einem Rechnungskonto, einem Ordner oder einer Organisation. Wenn die Ressource einen Logeintrag empfängt, wird er von jeder Senke in der Ressource verarbeitet. Wenn ein Logeintrag mit den Filtern der Senke übereinstimmt, wird er an das Ziel der Senke weitergeleitet.

Normalerweise werden mit Senken nur die Logeinträge weitergeleitet, die aus einer Ressource stammen. Für Ordner und Organisationen können Sie jedoch aggregierte Senken erstellen, mit denen Logeinträge aus dem Ordner oder der Organisation und den darin enthaltenen Ressourcen weitergeleitet werden. In diesem Dokument werden keine aggregierten Senken behandelt. Weitere Informationen finden Sie unter Zusammengefasste Senken.

Sie können Senken mit der Google Cloud -Console, der Cloud Logging API und der Google Cloud CLI erstellen und verwalten. Wir empfehlen, die Google Cloud -Konsole zu verwenden:

  • Auf der Seite Logs Router werden alle Senken aufgeführt. Außerdem finden Sie dort Optionen zum Verwalten Ihrer Senken.
  • Beim Erstellen einer Senke können Sie sich eine Vorschau der Logeinträge ansehen, die den Filtern der Senke entsprechen.
  • Sie können Senkenziele beim Erstellen einer Senke konfigurieren.
  • Einige Autorisierungsschritte werden für Sie ausgeführt.

Unterstützte Ziele

Das Ziel einer Senke kann sich in einer anderen Ressource als die Senke befinden. Sie können beispielsweise eine Logsenke verwenden, um Logeinträge aus einem Projekt an einen Log-Bucket weiterzuleiten, der in einem anderen Projekt gespeichert ist.

Die folgenden Ziele werden unterstützt:

Google Cloud -Projekt

Wählen Sie dieses Ziel aus, wenn die Logsenken im Zielprojekt Ihre Logeinträge umleiten sollen oder wenn Sie eine abfangende aggregierte Senke erstellt haben. Die Logsenken im Projekt, das das Senkenziel ist, können die Logeinträge an jedes unterstützte Ziel außer einem Projekt weiterleiten.

Log-Bucket

Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten in von Cloud Logging verwalteten Ressourcen speichern möchten. Logdaten, die in Log-Buckets gespeichert sind, können mit Diensten wie dem Log-Explorer und Log Analytics aufgerufen und analysiert werden.

Wenn Sie Ihre Logdaten mit anderen Geschäftsdaten verknüpfen möchten, können Sie sie in einem Log-Bucket speichern und ein verknüpftes BigQuery-Dataset erstellen. Ein verknüpftes Dataset ist ein schreibgeschütztes Dataset, das wie jedes andere BigQuery-Dataset abgefragt werden kann.

BigQuery-Dataset
Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten mit anderen Geschäftsdaten zusammenführen möchten. Das von Ihnen angegebene Dataset muss für Schreibvorgänge aktiviert sein. Legen Sie für das Ziel einer Senke kein verknüpftes BigQuery-Dataset fest. Verknüpfte Datasets sind schreibgeschützt.
Cloud Storage-Bucket
Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten langfristig speichern möchten. Der Cloud Storage-Bucket kann sich im selben Projekt befinden, in dem die Logeinträge erstellt werden, oder in einem anderen Projekt. Logeinträge werden als JSON-Dateien gespeichert.
Pub/Sub-Thema
Wählen Sie dieses Ziel aus, wenn Sie Ihre Protokolldaten ausGoogle Cloud exportieren und dann Drittanbieterintegrationen wie Splunk oder Datadog verwenden möchten. Logeinträge werden in JSON formatiert und dann an ein Pub/Sub-Thema weitergeleitet.

Einschränkungen für Ziele

In diesem Abschnitt werden zielgruppenspezifische Einschränkungen beschrieben:

  • Wenn Sie Logeinträge an einen Log-Bucket in einem anderen Google Cloud Projekt weiterleiten, werden diese Logeinträge nicht von Error Reporting analysiert. Weitere Informationen finden Sie unter Error Reporting – Übersicht.
  • Wenn Sie Logeinträge an ein BigQuery-Dataset weiterleiten, muss das BigQuery-Dataset schreibgeschützt sein. Sie können keine Logeinträge an verknüpfte Datasets weiterleiten, die schreibgeschützt sind.
  • Bei neuen Senken, die Logdaten an Cloud Storage-Buckets weiterleiten, kann es mehrere Stunden dauern, bis Logeinträge weitergeleitet werden. Diese Senken werden stündlich verarbeitet.
  • Die folgenden Einschränkungen gelten, wenn das Ziel eines Log-Senken ein Google Cloud -Projekt ist:

    • Es gibt ein Hop-Limit.
    • Logeinträge, die dem Filter der _Required-Logsenke entsprechen, werden nur dann an den _Required-Log-Bucket des Zielprojekts weitergeleitet, wenn sie aus dem Zielprojekt stammen.
    • Nur aggregierte Senken, die sich in der Ressourcenhierarchie eines Logeintrags befinden, verarbeiten den Logeintrag.

    Angenommen, das Ziel einer Logs-Senke im Projekt A ist das Projekt B. Dann gilt Folgendes:

    • Aufgrund der Beschränkung auf einen Hop können die Logsinks im Projekt B Logeinträge nicht an ein Google Cloud -Projekt weiterleiten.
    • Im _Required-Log-Bucket des Projekts B werden nur Logeinträge gespeichert, die aus dem Projekt B stammen. In diesem Log-Bucket werden keine Logeinträge gespeichert, die aus einer anderen Ressource stammen, einschließlich der Einträge, die aus dem Projekt A stammen.
    • Wenn sich die Ressourcenhierarchie von Projekt A und Projekt B unterscheidet, wird ein Logeintrag, den eine Logs-Senke in Projekt A an Projekt B weiterleitet, nicht an die aggregierten Senken in der Ressourcenhierarchie von Projekt B gesendet.
    • Wenn Projekt A und Projekt B dieselbe Ressourcenhierarchie haben, werden Logeinträge an die aggregierten Senken in dieser Hierarchie gesendet. Wenn ein Logeintrag nicht von einer aggregierten Senke abgefangen wird, sendet der Log-Router den Logeintrag an die Senken im Projekt A.

Hinweise

In der Anleitung in diesem Dokument wird beschrieben, wie Sie Senken aufGoogle Cloud Projektebene erstellen und verwalten. Sie können mit derselben Vorgehensweise eine Senke erstellen, mit der Logeinträge weitergeleitet werden, die in einer Organisation, einem Ordner oder einem Rechnungskonto generiert wurden.

Führen Sie zuerst die folgenden Schritte aus:

  1. Enable the Cloud Logging API.

    Enable the API

  2. Achten Sie darauf, dass Ihr Google Cloud Projekt Logeinträge enthält, die Sie im Log-Explorer sehen können.

  3. Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Logs Configuration Writer (roles/logging.configWriter) für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen, Ändern oder Löschen eines Senken 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.

    Informationen zum Zuweisen von IAM-Rollen finden Sie in der Anleitung zur Zugriffssteuerung für Logging.

  4. Sie haben eine Ressource in einem unterstützten Ziel oder die Erlaubnis, eine Ressource zu erstellen.

    Damit Logeinträge an ein Ziel weitergeleitet werden können, muss das Ziel vorhanden sein, bevor Sie die Senke erstellen. Sie können das Ziel in einem beliebigenGoogle Cloud -Projekt in einer beliebigen Organisation erstellen.

  5. Bevor Sie eine Senke erstellen, sollten Sie sich die Einschränkungen für das Senkenziel ansehen. Weitere Informationen finden Sie in diesem Dokument im Abschnitt Einschränkungen für Ziele.

  6. Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

      In the Google Cloud console, activate Cloud Shell.

      Activate Cloud Shell

      At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

      REST

      Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -Authentifizierung unter Für die Verwendung von REST authentifizieren.

      Senke erstellen

      In diesem Abschnitt wird beschrieben, wie Sie eine Senke in einem Google Cloud -Projekt erstellen. Sie können bis zu 200 Senken pro Google Cloud Projekt erstellen. Wenn Sie die Anzahl und das Volumen der weitergeleiteten Logeinträge sehen möchten, rufen Sie die logging.googleapis.com/exports/-Messwerte auf.

      Sie verwenden die Logging-Abfragesprache, um einen Filterausdruck zu erstellen, der den Logeinträgen entspricht, die Sie aufnehmen möchten. Geben Sie keine vertraulichen Informationen in Senkenfilter ein. Senkenfilter werden als Dienstdaten behandelt.

      Wenn eine Abfrage mehrere Anweisungen enthält, können Sie entweder angeben, wie diese Anweisungen verknüpft werden, oder darauf vertrauen, dass Cloud Logging die konjunktive Einschränkung AND implizit zwischen den Anweisungen einfügt. Angenommen, ein Abfrage- oder Filterdialogfeld enthält zwei Anweisungen, resource.type = "gce_instance" und severity >= "ERROR". Die tatsächliche Anfrage lautet resource.type = "gce_instance" AND severity >= "ERROR". Cloud Logging unterstützt sowohl disjunktive Einschränkungen (OR) als auch konjunktive Einschränkungen (AND). Wenn Sie OR-Anweisungen verwenden, empfehlen wir, die Klauseln mit Klammern zu gruppieren.

      So erstellen Sie eine Senke:

      Console

      1. Rufen Sie in der Google Cloud Console die Seite Log Router auf:

        Zum Logrouter

        Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.

      2. Wählen Sie das Google Cloud Projekt aus, in dem die Logeinträge, die Sie weiterleiten möchten, erstellt werden.

        Wenn Sie beispielsweise Ihre Logeinträge zum Datenzugriff aus dem Projekt mit dem Namen Project-A an einen Log-Bucket im Projekt mit dem Namen Project-B weiterleiten möchten, wählen Sie Project-A aus.

      3. Wählen Sie Senke erstellen aus.

      4. Geben Sie im Bereich Senkendetails die folgenden Details ein:

        • Senkenname: Geben Sie eine Kennzeichnung für die Senke an. Beachten Sie, dass Sie die Senke nach deren Erstellung nicht mehr umbenennen, aber löschen und eine neue erstellen können.

        • Senkenbeschreibung (optional): Beschreiben Sie den Zweck oder den Anwendungsfall für die Senke.

      5. Wählen Sie im Bereich Senkenziel den Senkendienst und das Ziel über das Menü Senkendienst auswählen aus. Führen Sie einen der folgenden Schritte aus:

        • Wenn Sie Logeinträge an einen Dienst im selbenGoogle Cloud Projekt weiterleiten möchten, wählen Sie eine der folgenden Optionen aus:

          • Cloud Logging-Bucket: Wählen Sie einen Logging-Bucket aus oder erstellen Sie einen.
          • BigQuery-Dataset: Wählen Sie das beschreibbare Dataset aus, das die weitergeleiteten Logeinträge erhalten soll, oder erstellen Sie es. Sie können auch partitionierte Tabellen verwenden.
          • Cloud Storage-Bucket: Wählen Sie den spezifischen Cloud Storage-Bucket aus, der die weitergeleiteten Logeinträge erhalten soll, oder erstellen Sie ihn.
          • Pub/Sub-Thema: Wählen Sie das spezifische Thema aus, das die weitergeleiteten Logeinträge erhalten soll, oder erstellen Sie es.
          • Splunk: Wählen Sie das Pub/Sub-Thema für den Splunk-Dienst aus.
        • Wenn Sie Logeinträge an ein anderes Google Cloud -Projekt weiterleiten möchten, wählen Sie Google Cloud -Projekt aus und geben Sie dann den vollständig qualifizierten Namen für das Ziel ein:

          logging.googleapis.com/projects/DESTINATION_PROJECT_ID
          
        • So leiten Sie Logeinträge an einen Dienst in einem anderenGoogle Cloud -Projekt weiter:

          1. Wählen Sie Andere Ressource aus.
          2. Geben Sie den vollständig qualifizierten Namen für das Ziel ein. Informationen zur Syntax finden Sie unter Zielpfadformate.
      6. Geben Sie die einzuschließenden Logeinträge an:

        1. Rufen Sie den Bereich Logs auswählen, die in der Senke enthalten sein sollen auf.

        2. Geben Sie im Feld Einschlussfilter erstellen einen Filterausdruck ein, der den Logeinträgen entspricht, die Sie einschließen möchten. Weitere Informationen zur Syntax zum Schreiben von Filtern finden Sie unter Logging-Abfragesprache.

          Wenn Sie keinen Filter festlegen, werden alle Logeinträge aus der ausgewählten Ressource an das Ziel weitergeleitet.

          Wenn Sie beispielsweise alle Datenzugriffslog-Einträge an einen Logging-Bucket weiterleiten möchten, können Sie den folgenden Filter verwenden:

          log_id("cloudaudit.googleapis.com/data_access") OR log_id("externalaudit.googleapis.com/data_access")
          

          Ein Filter darf nicht länger als 20.000 Zeichen sein.

        3. Wählen Sie Vorschau von Logs aus, um zu prüfen, ob Sie den richtigen Filter eingegeben haben. Der Log-Explorer wird in einem neuen Tab geöffnet, auf dem der Filter bereits ausgefüllt ist.

      7. Optional: Konfigurieren Sie einen Ausschlussfilter, um einige der enthaltenen Logeinträge auszuschließen:

        1. Rufen Sie den Bereich Logs zum Filtern aus der Senke auswählen auf.

        2. Geben Sie in das Feld Name des Ausschlussfilters einen Namen ein.

        3. Geben Sie im Abschnitt Ausschlussfilter erstellen einen Filterausdruck ein, der den Logeinträgen entspricht, die Sie ausschließen möchten. Mit der Funktion sample können Sie auch einen Teil der Logeinträge auswählen, die ausgeschlossen werden sollen.

        Sie können bis zu 50 Ausschlussfilter pro Senke erstellen. Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.

      8. Wählen Sie Senke erstellen aus.

      9. Gewähren Sie dem Dienstkonto für die Senke die Berechtigung, Logeinträge in das Ziel der Senke zu schreiben. Weitere Informationen finden Sie unter Zielberechtigungen festlegen.

      gcloud

      So erstellen Sie eine Senke:

      1. Führen Sie dazu den Befehl gcloud logging sinks create aus.

        gcloud logging sinks create SINK_NAME SINK_DESTINATION
        

        Bevor Sie den Befehl ausführen, ersetzen Sie die folgenden Werte:

        • SINK_NAME: Der Name der Logsenke. Sie können den Namen eines Senken nach dem Erstellen nicht mehr ändern.
        • SINK_DESTINATION: Der Dienst oder das Projekt, an das Ihre Logeinträge weitergeleitet werden sollen. Legen Sie SINK_DESTINATION mit dem entsprechenden Pfad fest, wie unter Zielpfadformate beschrieben.

          Wenn Ihr Senkenziel beispielsweise ein Pub/Sub-Thema ist, sieht SINK_DESTINATION so aus:

          pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
          

        Sie können auch die folgenden Optionen angeben:

        • --log-filter : Verwenden Sie diese Option, um einen Filter festzulegen, der den Logeinträgen entspricht, die Sie in die Senke aufnehmen möchten. Wenn Sie keinen Wert für den Einschlussfilter angeben, stimmt dieser Filter mit allen Logeinträgen überein.
        • --exclusion: Mit dieser Option legen Sie einen Ausschlussfilter für Logeinträge fest, die nicht über Ihre Senke weitergeleitet werden sollen. Mit der Funktion sample können Sie auch einen Teil der Logeinträge auswählen, die ausgeschlossen werden sollen. Diese Option kann wiederholt werden. Sie können bis zu 50 Ausschlussfilter pro Senke erstellen.
        • --description: Verwenden Sie diese Option, um den Zweck oder den Anwendungsfall für die Senke zu beschreiben.

        Wenn Sie beispielsweise eine Senke in einem Logging-Bucket erstellen möchten, könnte der Befehl so aussehen:

        gcloud logging sinks create my-sink logging.googleapis.com/projects/myproject123/locations/global/buckets/my-bucket \
         --log-filter='logName="projects/myproject123/logs/matched"' --description="My first sink"
        

        Weitere Informationen zum Erstellen von Senken mit der Google Cloud CLI finden Sie in der gcloud logging sinks-Referenz.

      2. Wenn die Befehlsantwort einen JSON-Schlüssel mit dem Label "writerIdentity" enthält, gewähren Sie dem Dienstkonto der Senke die Berechtigung, in das Senkenziel zu schreiben. Weitere Informationen finden Sie unter Zielberechtigungen festlegen.

        Sie müssen keine Berechtigungen für das Ziel festlegen, wenn die Antwort keinen JSON-Schlüssel mit dem Label "writerIdentity" enthält.

      REST

      1. Verwenden Sie zum Erstellen einer Logging-Senke in Ihrem Google Cloud -Projekt die Methode projects.sinks.create in der Logging API. Geben Sie im Objekt LogSink die entsprechenden erforderlichen Werte im Methodenanfragetext an:

        • name: Geben Sie eine Kennzeichnung für die Senke an. Beachten Sie, dass Sie die Senke nach deren Erstellung nicht mehr umbenennen, jedoch löschen können. Sie können auch eine neue Senke erstellen.
        • destination: Der Dienst und das Ziel, an das Ihre Logeinträge weitergeleitet werden sollen. Wenn Sie Logeinträge an ein anderes Projekt oder an ein Ziel in einem anderen Projekt weiterleiten möchten, legen Sie das Feld destination mit dem entsprechenden Pfad fest, wie unter Zielpfadformate beschrieben.

          Wenn Ihr Senkenziel beispielsweise ein Pub/Sub-Thema ist, sieht destination so aus:

          pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
          
      2. Geben Sie im LogSink-Objekt die entsprechenden optionalen Informationen an:

        • filter : Legen Sie das Feld filter so fest, dass es den Logeinträgen entspricht, die Sie in die Senke aufnehmen möchten. Wenn Sie keinen Filter festlegen, werden alle Logeinträge aus IhremGoogle Cloud -Projekt an das Ziel weitergeleitet. Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.
        • exclusions: Legen Sie dieses Feld so fest, dass es den Logeinträgen entspricht, die Sie von der Senke ausschließen möchten. Mit der Funktion sample können Sie auch einen Teil der Logeinträge auswählen, die ausgeschlossen werden sollen. Sie können bis zu 50 Ausschlussfilter pro Senke erstellen.
        • description: Legen Sie dieses Feld fest, um den Zweck oder den Anwendungsfall für die Senke zu beschreiben.
      3. Rufen Sie projects.sinks.create auf, um die Senke zu erstellen.

      4. Wenn die API-Antwort einen JSON-Schlüssel mit dem Label "writerIdentity" enthält, gewähren Sie dem Dienstkonto des Senken die Berechtigung, in das Senkenziel zu schreiben. Weitere Informationen finden Sie unter Zielberechtigungen festlegen.

        Sie müssen keine Zielberechtigungen festlegen, wenn die API-Antwort keinen JSON-Schlüssel mit dem Label "writerIdentity" enthält.

      Weitere Informationen zum Erstellen von Senken mit der Logging API finden Sie in der LogSink-Referenz.

      Wenn Sie Fehlerbenachrichtigungen erhalten, lesen Sie die Informationen unter Fehlerbehebung bei Routing und Senken.

      Formate für Zielpfade

      Wenn Sie Logeinträge an einen Dienst in einem anderen Projekt weiterleiten, müssen Sie der Senke den vollständig qualifizierten Namen des Dienstes angeben. Wenn Sie Logeinträge an ein anderes Google Cloud Projekt weiterleiten, müssen Sie für die Senke den vollständig qualifizierten Namen des Zielprojekts angeben:

      • Cloud Logging-Log-Bucket:

        logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
        
      • Ein anderes Google Cloud Projekt:

        logging.googleapis.com/projects/DESTINATION_PROJECT_ID
        
      • BigQuery-Dataset:

        bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
        
      • Cloud Storage:

        storage.googleapis.com/BUCKET_NAME
        
      • Pub/Sub-Thema:

        pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
        

      Zielberechtigungen festlegen

      In diesem Abschnitt wird beschrieben, wie Sie Logging die IAM-Berechtigungen (Identity and Access Management) zum Schreiben von Logeinträgen an das Ziel der Senke gewähren. Eine vollständige Liste der Logging-Rollen und -Berechtigungen finden Sie unter Zugriffssteuerung.

      Cloud Logging erstellt ein gemeinsames Dienstkonto für eine Ressource, wenn ein Senken erstellt wird, sofern das erforderliche Dienstkonto noch nicht vorhanden ist. Das Dienstkonto ist möglicherweise vorhanden, weil dasselbe Dienstkonto für alle Senken in der zugrunde liegenden Ressource verwendet wird. Ressourcen können ein Google Cloud Projekt, eine Organisation, ein Ordner oder ein Rechnungskonto sein.

      Die Identität des Autors einer Senke ist die Kennung des Dienstkontos, das dieser Senke zugeordnet ist. Alle Senken haben eine Writer-Identität, mit Ausnahme von Senken, die in einen Log-Bucket im selben Google Cloud Projekt schreiben, in dem der Logeintrag stammt. Für die zweite Konfiguration ist kein Dienstkonto erforderlich. Das Feld writer identity der Senke wird in der Console daher als None aufgeführt. Die API und die Google Cloud CLI-Befehle geben keine Identität des Autors zurück.

      Die folgenden Anleitungen gelten für Projekte, Ordner, Organisationen und Rechnungskonten:

      Console

      1. Sie benötigen Inhaberzugriff auf dasGoogle Cloud -Projekt, das das Ziel enthält. Wenn Sie keinen Inhaber-Zugriff auf das Ziel der Senke haben, bitten Sie einen Projektinhaber, die Identität des Autors als Prinzipal hinzuzufügen.

      2. So rufen Sie von der neuen Senke die Identität des Autors in Form einer E-Mail-Adresse ab:

        1. Rufen Sie in der Google Cloud Console die Seite Log Router auf:

          Zum Logrouter

          Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.

        2. Wählen Sie in der Symbolleiste das Projekt aus, das die Senke enthält.
        3. Wählen Sie  Menü und dann Senkendetails ansehen aus. Die Identität des Autors wird im Feld Senkendetails angezeigt.
      3. Wenn der Wert des Felds writerIdentity eine E-Mail-Adresse enthält, fahren Sie mit dem nächsten Schritt fort. Wenn der Wert None ist, müssen Sie keine Zielberechtigungen für die Senke konfigurieren.

      4. Kopieren Sie die Identität des Autors der Senke in die Zwischenablage.

        Die E-Mail-Adresse identifiziert das Hauptkonto. Das Präfix serviceAccount: gibt den Kontotyp an.

      5. Erteilen Sie dem Hauptkonto, das in der Identität des Autors der Senke angegeben ist, die Berechtigung zum Schreiben von Logdaten in das Ziel:

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

          Rufen Sie IAM auf.

          Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift IAM & Admin ist.

        2. Achten Sie darauf, dass in der Symbolleiste das Projekt ausgewählt ist, in dem das Ziel gespeichert ist oder das das Senkenziel ist. Wenn das Ziel beispielsweise ein Log-Bucket ist, muss in der Symbolleiste das Projekt angezeigt werden, in dem der Log-Bucket gespeichert ist.

        3. Klicken Sie auf Zugriff erlauben.

        4. Weisen Sie dem Hauptkonto, das in der Identität des Autors der Senke angegeben ist, eine IAM-Rolle basierend auf dem Ziel der Logs zu:

      gcloud

      1. Sie benötigen Inhaberzugriff auf dasGoogle Cloud -Projekt, das das Ziel enthält. Wenn Sie keinen Inhaber-Zugriff auf das Ziel der Senke haben, bitten Sie einen Projektinhaber, die Identität des Autors als Prinzipal hinzuzufügen.

      2. Rufen Sie das Dienstkonto aus dem Feld writerIdentity der Senke ab:

        gcloud logging sinks describe SINK_NAME
        
      3. Suchen Sie die Senke, deren Berechtigungen Sie ändern möchten. Wenn die Senkendetails eine Zeile mit writerIdentity enthalten, fahren Sie mit dem nächsten Schritt fort. Wenn die Details kein writerIdentity-Feld enthalten, müssen Sie keine Zielberechtigungen für die Senke konfigurieren.

        Die Identität des Autors für das Dienstkonto sieht in etwa so aus:

        serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
        
      4. Erteilen Sie der Identität des Autors der Senke die Berechtigung, Logdaten in das Ziel zu schreiben, indem Sie den Befehl gcloud projects add-iam-policy-binding aufrufen.

        Bevor Sie den folgenden Befehl verwenden, ersetzen Sie die folgenden Werte:

        • PROJECT_ID: Die Kennung des Projekts. Geben Sie das Projekt an, in dem das Ziel der Logsenke gespeichert wird. Wenn das Ziel ein Projekt ist, geben Sie dieses Projekt an.
        • PRINCIPAL: Eine Kennzeichnung für das Hauptkonto, dem Sie die Rolle zuweisen möchten. Hauptkonto-Kennzeichnungen haben normalerweise das folgende Format: PRINCIPAL-TYPE:ID. Beispiel: user:my-user@example.com Eine vollständige Liste der Formate, die PRINCIPAL haben kann, finden Sie unter Hauptkonto-IDs.
        • ROLE: Eine IAM-Rolle. Weisen Sie der Identität des Autors der Senke eine IAM-Rolle basierend auf dem Ziel der Logs zu:

        Führen Sie den Befehl gcloud projects add-iam-policy-binding aus:

        gcloud projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL --role=ROLE
        

      REST

      Wir empfehlen, die Google Cloud Console oder die Google Cloud CLI zu verwenden, um einem Dienstkonto eine Rolle zuzuweisen.

      Senken verwalten

      Nachdem die Senken erstellt wurden, können Sie folgende Aktionen für sie ausführen. Es kann einige Minuten dauern, bis Änderungen an einem Senkenziel angewendet werden:

      • Details ansehen
      • Aktualisieren
      • Deaktivieren

        • Sie können die Senke _Required nicht deaktivieren.
        • Sie können die Senke _Default deaktivieren, um zu verhindern, dass Logeinträge an den _Default-Logging-Bucket weitergeleitet werden.
        • Wenn Sie die _Default-Senke für alle neuenGoogle Cloud -Projekte oder -Ordner deaktivieren möchten, die in Ihrer Organisation erstellt werden, sollten Sie Standardeinstellungen für Ressourcen konfigurieren.
      • Löschen

        • Sie können die Senken _Default oder _Required nicht löschen.
        • Wenn Sie eine Senke löschen, werden keine Logeinträge mehr weitergeleitet.
        • Wenn die Senke ein dediziertes Dienstkonto hat, wird beim Löschen der Senke auch das Dienstkonto gelöscht. Für Senken, die vor dem 22. Mai 2023 erstellt wurden, gibt es spezielle Dienstkonten. Für Senken, die am oder nach dem 22. Mai 2023 erstellt wurden, wird ein gemeinsames Dienstkonto verwendet. Wenn Sie die Senke löschen, wird das freigegebene Dienstkonto nicht gelöscht.
      • Fehlerbehebung

      • Logvolumen und Fehlerraten ansehen

      Im Folgenden finden Sie die Anleitung zum Verwalten einer Senke in einem Google Cloud -Projekt. Anstelle eines Google Cloud Projekts können Sie ein Abrechnungskonto, einen Ordner oder eine Organisation angeben:

      Console

      1. Rufen Sie in der Google Cloud Console die Seite Log Router auf:

        Zum Logrouter

        Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.

      2. Wählen Sie in der Symbolleiste die Ressource aus, die Ihre Senke enthält. Die Ressource kann ein Projekt, ein Ordner, eine Organisation oder ein Rechnungskonto sein.

      Auf der Seite Log Router werden die Senken in der ausgewählten Ressource angezeigt. Jede Tabellenzeile enthält Informationen zu den Attributen einer Senke:

      • Aktiviert: Gibt an, ob der Status der Senke aktiviert oder deaktiviert ist.
      • Typ: Der Zieldienst der Senke, beispielsweise Cloud Logging bucket.
      • Name: Die Kennung der Senke, wie sie beim Erstellen der Senke angegeben wurde, z. B. _Default.
      • Beschreibung: Die Beschreibung der Senke, wie sie beim Erstellen der Senke angegeben wurde.
      • Ziel: Der vollständige Name des Ziels, an das die weitergeleiteten Logeinträge gesendet werden.
      • Erstellt: Datum und Uhrzeit der Erstellung des Senken.
      • Zuletzt aktualisiert: Das Datum und die Uhrzeit der letzten Bearbeitung des Senkenknotens.
      • Volumen: Das Gesamtvolumen der Logs, die an die Logsenke weitergeleitet wurden. Der Wert umfasst das Volumen, das an Log-Buckets, Projekte oder andere Ziele weitergeleitet wird.

      In jeder Tabellenzeile stehen im -Menü Weitere Aktionen die folgenden Optionen zur Verfügung:

      • Senkendetails ansehen: Zeigt den Namen, die Beschreibung, den Zieldienst, das Ziel sowie die Ein- und Ausschlussfilter der Senke an. Wenn Sie Bearbeiten auswählen, wird der Bereich Senke bearbeiten geöffnet.
      • Senke bearbeiten: Öffnet das Fenster Senke bearbeiten, in dem Sie die Parameter der Senke aktualisieren können.
      • Senke deaktivieren: Ermöglicht das Deaktivieren der Senke und das Beenden der Weiterleitung von Logeinträgen an das Ziel der Senke. Weitere Informationen zum Deaktivieren von Senken finden Sie unter Speichern von Logs in Log-Buckets beenden.
      • Senke aktivieren: Ermöglicht das Aktivieren einer deaktivierten Senke und den Neustart der Weiterleitung von Logeinträgen zum Ziel der Senke.
      • Senke löschen: Ermöglicht das Löschen der Senke und das Beenden der Weiterleitung von Logeinträgen an das Ziel der Senke.
      • Fehlerbehebung für Senke: Öffnet den Log-Explorer, in dem Sie Fehler bei der Senke beheben können.
      • Volumen und Fehlerraten des Senkenlogs ansehen: Öffnet den Metrics Explorer, in dem Sie Daten aus der Senke ansehen und analysieren können.

      Wenn Sie die Tabelle nach einer Spalte sortieren möchten, wählen Sie den Spaltennamen aus.

      gcloud

      • Verwenden Sie den Befehl gcloud logging sinks list, um die Liste der Senken für Ihr Google Cloud -Projekt aufzurufen, der der Logging API-Methode projects.sinks.list entspricht:

        gcloud logging sinks list
        

        Um die Liste der aggregierten Senken aufzurufen, verwenden Sie die entsprechende Option, um die Ressource anzugeben, die die Senke enthält. Wenn Sie beispielsweise die Senke auf Organisationsebene erstellt haben, verwenden Sie die Option --organization=ORGANIZATION_ID, um die Senken für die Organisation aufzulisten.

      • Verwenden Sie zum Beschreiben einer Senke den Befehl gcloud logging sinks describe, der der Logging API-Methode projects.sinks.get entspricht:

        gcloud logging sinks describe SINK_NAME
        
      • Verwenden Sie zum Aktualisieren einer Senke den Befehl gcloud logging sinks update, der der API-Methode projects.sink.update entspricht.

        Sie können eine Senke aktualisieren, um das Ziel, die Filter und die Beschreibung zu ändern oder die Senke zu deaktivieren oder wieder zu aktivieren:

        gcloud logging sinks update SINK_NAME NEW_DESTINATION --log-filter=NEW_FILTER

        Lassen Sie NEW_DESTINATION oder --log-filter weg, wenn sich diese Teile nicht ändern.

        Wenn Sie beispielsweise das Ziel der Senke mit dem Namen my-project-sink auf ein neues Cloud Storage-Bucket-Ziel mit dem Namen my-second-gcs-bucket aktualisieren möchten, sieht der Befehl so aus:

        gcloud logging sinks update  my-project-sink storage.googleapis.com/my-second-gcs-bucket
        
      • Verwenden Sie zum Deaktivieren einer Senke den Befehl gcloud logging sinks update, der der API-Methode projects.sink.update entspricht, und fügen Sie die Option --disabled ein:

        gcloud logging sinks update SINK_NAME --disabled
        

        Verwenden Sie zum erneuten Aktivieren der Senke den Befehl gcloud logging sinks update, entfernen Sie die Option --disabled und fügen Sie die Option --no-disabled ein:

        gcloud logging sinks update SINK_NAME --no-disabled
        
      • Verwenden Sie zum Löschen einer Senke den Befehl gcloud logging sinks delete, der der API-Methode projects.sinks.delete entspricht:

        gcloud logging sinks delete SINK_NAME
        

        Weitere Informationen zum Verwalten von Senken mit der Google Cloud CLI finden Sie in der gcloud logging sinks-Referenz.

      REST

      • Rufen Sie projects.sinks.list auf, um die Senken für Ihr Google Cloud -Projekt aufzurufen.

      • Rufen Sie projects.sinks.get auf, um die Details einer Senke aufzurufen.

      • Rufen Sie projects.sink.update auf, um eine Senke zu aktualisieren.

        Sie können das Ziel, die Filter und die Beschreibung einer Senke aktualisieren. Sie können die Senke auch deaktivieren oder wieder aktivieren.

      • Um ein Ziel zu deaktivieren, setzen Sie das Feld disabled im LogSink-Objekt auf true und rufen Sie dann projects.sink.update auf.

        Wenn Sie die Senke wieder aktivieren möchten, legen Sie das Feld disabled im LogSink-Objekt auf false fest und rufen Sie dann projects.sink.update auf.

      • Rufen Sie projects.sinks.delete auf, um ein Ziel zu löschen.

        Weitere Informationen zum Verwalten von Senken mit der Logging API finden Sie in der LogSink-Referenz.

      Speichern von Logeinträgen in Log-Buckets beenden

      Sie können die _Default-Senke und alle benutzerdefinierten Senken deaktivieren. Wenn Sie eine Senke deaktivieren, werden keine Logeinträge mehr an das Ziel der Senke weitergeleitet. Wenn Sie beispielsweise die Senke _Default deaktivieren, werden keine Logeinträge an den Bucket _Default weitergeleitet. Der _Default-Bucket ist leer, wenn alle zuvor gespeicherten Logeinträge die Aufbewahrungsdauer des Buckets erfüllt haben.

      In der folgenden Anleitung wird beschrieben, wie Sie Ihre Google Cloud -Projektsenken deaktivieren, die Logeinträge an die _Default-Log-Buckets weiterleiten:

      Console

      1. Rufen Sie in der Google Cloud Console die Seite Log Router auf:

        Zum Logrouter

        Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.

      2. Filtern Sie die Senken nach Ziel und geben Sie _Default ein, um alle Senken zu ermitteln, die Logeinträge an den _Default-Log-Bucket weiterleiten.
      3. Wählen Sie für jede Senke das Dreipunkt-Menü  Menü und dann Senke deaktivieren aus.

        Die Senken sind jetzt deaktiviert und Ihre Google Cloud -Projektsenken leiten keine Logeinträge mehr an den _Default-Bucket weiter.

      Gehen Sie so vor, um eine deaktivierte Senke wieder zu aktivieren und die Weiterleitung der Logeinträge an das Ziel der Senke neu zu starten:

      1. Rufen Sie in der Google Cloud Console die Seite Log Router auf:

        Zum Logrouter

        Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.

      2. Filtern Sie die Senken nach Ziel und geben Sie _Default ein, um alle Senken zu ermitteln, die Logeinträge an den _Default-Log-Bucket weiterleiten.
      3. Wählen Sie für jede Senke das Dreipunkt-Menü  Menü und dann Senke aktivieren aus.

      gcloud

      1. Verwenden Sie den Befehl gcloud logging sinks list, um die Liste der Senken für Ihr Google Cloud -Projekt aufzurufen, der der Logging API-Methode projects.sinks.list entspricht:

        gcloud logging sinks list
        
      2. Identifizieren Sie alle Senken, die an den Log-Bucket _Default weiterleiten. Verwenden Sie zum Beschreiben einer Senke, einschließlich des Zielnamens, den Befehl gcloud logging sinks describe. Dies entspricht der Logging API-Methode projects.sinks.get:

        gcloud logging sinks describe SINK_NAME
        
      3. Führen Sie den Befehl gcloud logging sinks update mit der Option --disabled aus. Um beispielsweise die Senke _Default zu deaktivieren, verwenden Sie den folgenden Befehl:

        gcloud logging sinks update _Default  --disabled
        

        Die Senke _Default ist jetzt deaktiviert. Sie leitet keine Logeinträge mehr an den _Default-Log-Bucket weiter.

      Wiederholen Sie die vorherigen Schritte, um die anderen Senken in Ihrem Google Cloud Projekt zu deaktivieren, die an den _Default-Bucket weiterleiten.

      Verwenden Sie zum erneuten Aktivieren einer Senke den Befehl gcloud logging sinks update, entfernen Sie die Option --disabled und fügen Sie die Option --no-disabled ein:

      gcloud logging sinks update _Default  --no-disabled
      

      REST

      1. Rufen Sie die Logging API-Methode projects.sinks.list auf, um die Senken für Ihr Google Cloud -Projekt aufzurufen.

        Identifizieren Sie alle Senken, die an den _Default-Bucket weiterleiten.

      2. Wenn Sie beispielsweise die Senke _Default deaktivieren möchten, legen Sie das Feld disabled im LogSink-Objekt auf true fest und rufen Sie dann projects.sink.update auf.

        Die Senke _Default ist jetzt deaktiviert. Sie leitet keine Logeinträge mehr an den _Default-Bucket weiter.

      Wiederholen Sie die vorherigen Schritte, um die anderen Senken in Ihrem Google Cloud Projekt zu deaktivieren, die an den _Default-Bucket weiterleiten.

      Wenn Sie eine Senke wieder aktivieren möchten, legen Sie das Feld disabled im LogSink-Objekt auf false fest und rufen Sie dann projects.sink.update auf.

      Codebeispiele

      Informationen zum Verwenden von Clientbibliothekscode zum Konfigurieren von Senken in den von Ihnen ausgewählten Sprachen finden Sie unter Logging-Clientbibliotheken: Logsenken.

      Beispiele für Filter

      Im Folgenden finden Sie einige Filterbeispiele, die beim Erstellen von Senken besonders nützlich sind. Weitere Beispiele, die beim Erstellen von Ein- und Ausschlussfiltern nützlich sein können, finden Sie unter Beispielabfragen.

      Senkenfilter _Default wiederherstellen

      Wenn Sie den Filter für die Senke _Default bearbeitet haben, empfiehlt es sich, die ursprüngliche Konfiguration dieser Senke wiederherzustellen. Beim Erstellen wird die _Default-Senke mit dem folgenden Einschlussfilter und einem leeren Ausschlussfilter konfiguriert:

        NOT log_id("cloudaudit.googleapis.com/activity") AND NOT \
        log_id("externalaudit.googleapis.com/activity") AND NOT \
        log_id("cloudaudit.googleapis.com/system_event") AND NOT \
        log_id("externalaudit.googleapis.com/system_event") AND NOT \
        log_id("cloudaudit.googleapis.com/access_transparency") AND NOT \
        log_id("externalaudit.googleapis.com/access_transparency")
      

      Google Kubernetes Engine-Container- und -Pod-Logs ausschließen

      Verwenden Sie den folgenden Filter, um Google Kubernetes Engine-Container- und -Pod-Logeinträge für das GKE-System namespaces auszuschließen:

      resource.type = ("k8s_container" OR "k8s_pod")
      resource.labels.namespace_name = (
      "cnrm-system" OR
      "config-management-system" OR
      "gatekeeper-system" OR
      "gke-connect" OR
      "gke-system" OR
      "istio-system" OR
      "knative-serving" OR
      "monitoring-system" OR
      "kube-system")
      

      Verwenden Sie den folgenden Filter, um Google Kubernetes Engine-Knoten-Logeinträge für das GKE-System logNames auszuschließen:

      resource.type = "k8s_node"
      logName:( "logs/container-runtime" OR
      "logs/docker" OR
      "logs/kube-container-runtime-monitor" OR
      "logs/kube-logrotate" OR
      "logs/kube-node-configuration" OR
      "logs/kube-node-installation" OR
      "logs/kubelet" OR
      "logs/kubelet-monitor" OR
      "logs/node-journal" OR
      "logs/node-problem-detector")
      

      So rufen Sie das Volumen von Google Kubernetes Engine-Knoten-, ‑Pod- und ‑Container-Logeinträgen auf, die in Log-Buckets gespeichert sind:

      Dataflow-Logs, die nicht für Unterstützung erforderlich sind, ausschließen

      Verwenden Sie den folgenden Filter, um Dataflow-Logeinträge auszuschließen, die nicht für den Support erforderlich sind:

      resource.type="dataflow_step"
      labels."dataflow.googleapis.com/log_type"!="system" AND labels."dataflow.googleapis.com/log_type"!="supportability"
      

      Verwenden Sie den Metrics Explorer, um die Menge an Dataflow-Logs aufzurufen, die in Log-Buckets gespeichert sind.

      Support

      In Cloud Logging können Sie zwar Logeinträge ausschließen und verhindern, dass sie in einem Log-Bucket gespeichert werden, doch sollten Sie Logeinträge beibehalten, die für den Support hilfreich sein. Anhand dieser Logeinträge können Probleme mit Ihren Anwendungen behoben und identifiziert werden.

      GKE-Systemlog-Einträge sind beispielsweise nützlich, um Probleme bei GKE-Anwendungen und -Clustern zu beheben, da sie für Ereignisse in Ihrem Cluster generiert werden. Anhand dieser Logeinträge können Sie feststellen, ob Ihr Anwendungscode oder der zugrunde liegende GKE-Cluster den Anwendungsfehler verursacht. GKE-Systemlogs umfasst auch Kubernetes-Audit-Logging, das von der Kubernetes API Server-Komponente generiert wird. Dazu gehören Änderungen, die mit dem kubectl-Befehl und Kubernetes-Ereignissen vorgenommen wurden.

      Für Dataflow empfehlen wir Ihnen, mindestens Ihre Systemlogs (labels."dataflow.googleapis.com/log_type"="system") und Ihre Supportlogs (labels."dataflow.googleapis.com/log_type"="supportability") in Log-Buckets zu schreiben. Diese Logs sind wichtig, damit Entwickler ihre Dataflow-Pipelines beobachten und Fehler beheben können und Nutzer können möglicherweise nicht die Dataflow-Seite Jobdetails verwenden, um Joblogs anzusehen.

      Nächste Schritte