Logs an unterstützte Ziele weiterleiten

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

In diesem Dokument wird erläutert, wie Sie Senken erstellen und verwalten, um Logeinträge an unterstützte Ziele weiterzuleiten.

Übersicht

Senken steuern, wie Cloud Logging Logs weiterleitet. Mit Senken können Sie einige oder alle Logs an die folgenden Ziele weiterleiten:

  • Cloud Logging-Log-Buckets: Speicher in Cloud Logging In einem Log-Bucket können Logs gespeichert werden, die von mehreren Google Cloud-Projekten aufgenommen wurden. Sie geben die Aufbewahrungsdauer für Daten, den Speicherort für die Daten und die Logansichten für einen Log-Bucket an. Mit Logansichten können Sie steuern, auf welche Logs in einem Log-Bucket ein Nutzer zugreifen kann. Log-Buckets werden als Speicher empfohlen, wenn Sie Fehler in Ihren Anwendungen und Diensten beheben oder Ihre Logdaten analysieren möchten. Wenn Sie Ihre Cloud Logging-Daten mit anderen Datenquellen kombinieren müssen, können Sie Ihre Logs in Log-Buckets speichern, die für die Verwendung von Log Analytics aktualisiert wurden, und diesen Bucket dann mit BigQuery verknüpfen. Informationen zum Aufrufen von Logs finden Sie unter Logs ansehen und ansehen und Logs an Cloud Logging-Buckets weiterleiten.
  • Pub/Sub-Themen: Bietet Unterstützung für Integrationen von Drittanbietern wie Splunk mit Logging. Logeinträge werden in JSON formatiert und dann an ein Pub/Sub-Thema gesendet. Informationen zum Aufrufen dieser Logs, ihrer Organisation und zum Konfigurieren der Integration eines Drittanbieters finden Sie unter An Pub/Sub weitergeleitete Logs ansehen.
  • BigQuery-Datasets: Speichert Logeinträge in BigQuery-Datasets. Sie können Big Data-Analysefunktionen für die gespeicherten Logs verwenden. Wenn Sie Ihre Cloud Logging-Daten mit anderen Datenquellen kombinieren müssen, können Sie Ihre Logs an BigQuery weiterleiten. Alternativ können Sie Ihre Logs in Log-Buckets speichern, die für die Verwendung von Log Analytics aktualisiert und dann mit BigQuery verknüpft werden. Informationen zum Aufrufen von an BigQuery weitergeleiteten Logs finden Sie unter An BigQuery weitergeleitete Logs ansehen.
  • Cloud Storage-Buckets: Bietet eine kostengünstige, langfristige Speicherung von Logdaten in Cloud Storage. Logeinträge werden als JSON-Dateien gespeichert. Informationen zum Aufrufen dieser Logs, ihrer Organisation und ihrer Verarbeitung finden Sie unter An Cloud Storage weitergeleitete Logs ansehen.

Senken gehören zu einer bestimmten Google Cloud-Ressource: Cloud-Projekte, Rechnungskonten, Ordner und Organisationen. Wenn die Ressource einen Logeintrag empfängt, wird der Logeintrag gemäß den von der Ressource enthaltenen Senken weitergeleitet. Der Logeintrag wird an das Ziel gesendet, das mit jeder übereinstimmenden Senke verknüpft ist.

Eine aggregierte Senke ist eine Art Senke, die Logeinträge aus den Google Cloud-Ressourcen einer Organisation oder eines Ordners kombiniert und weiterleitet. Eine Anleitung finden Sie unter Logs auf Organisationsebene verknüpfen und an unterstützte Ziele weiterleiten.

Sie können Senken mit der Google Cloud Console, der Cloud Logging API und der Google Cloud CLI erstellen und verwalten. Die Google Cloud Console bietet gegenüber den anderen Methoden die folgenden Vorteile:

  • Hier können Sie alle Ihre Senken an einem Ort ansehen und verwalten.
  • Vorschau der Logeinträge ansehen, die dem Filter der Senke entsprechen, bevor Sie die Senke erstellen
  • Senkenziele für Senken erstellen und autorisieren

Hinweis

In der Anleitung wird beschrieben, wie Sie Senken auf Cloud-Projektebene erstellen und verwalten. Sie können jedoch (nicht aggregierte) Senken für Rechnungskonten, Ordner und Organisationen erstellen.

Prüfen Sie zu Beginn Folgendes:

  • Sie haben ein Google Cloud-Projekt mit Logs, die Sie im Log-Explorer sehen können.
  • Sie haben eine der folgenden IAM-Rollen für das Cloud-Quellprojekt, von dem Sie Logs weiterleiten.

    • Inhaber (roles/owner)
    • Logging-Administrator (roles/logging.admin)
    • Autor von Log-Konfigurationen (roles/logging.configWriter)

    Mit den in diesen Rollen enthaltenen Berechtigungen können Sie Senken erstellen, löschen oder ändern. Informationen zum Festlegen von IAM-Rollen finden Sie in der Anleitung zur Zugriffssteuerung für Logging.

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

    Das Routingziel muss vor der Senke erstellt werden. Dies erfolgt über die Google Cloud CLI, die Google Cloud Console oder die Google Cloud APIs. Sie können das Ziel in jedem Cloud-Projekt jeder Organisation erstellen. Achten Sie jedoch zuerst darauf, dass das Dienstkonto aus der Senke Berechtigungen zum Schreiben in das Ziel hat.

Senke erstellen

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

Sie können bis zu 200 Senken pro Cloud-Projekt erstellen.

Achten Sie nach dem Erstellen der Senke darauf, dass Logging die erforderlichen Berechtigungen zum Schreiben von Logs in das Senkenziel hat. Weitere Informationen finden Sie unter Zielberechtigungen festlegen.

So erstellen Sie eine Senke:

Console

  1. Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
    Zu Log Router

  2. Wählen Sie ein vorhandenes Cloud-Projekt 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 über das Menü Senkendienst auswählen den Senkendienst und das Senkenziel aus.

    Wenn Sie zu einem Dienst weitergeleitet werden, der sich im selben Cloud-Projekt befindet, wählen Sie eine der folgenden Optionen aus:

    • Cloud Logging-Bucket: Wählen Sie einen Logging-Bucket aus oder erstellen Sie einen.
    • BigQuery-Tabelle: Wählen Sie das spezifische Dataset aus, das die weitergeleiteten Logs 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 Logs erhalten soll, oder erstellen Sie ihn.
    • Pub/Sub-Thema: Wählen Sie das spezifische Thema aus, das die weitergeleiteten Logs erhalten soll, oder erstellen Sie es.
    • Splunk: Wählen Sie das Pub/Sub-Thema für den Splunk-Dienst aus.

    Wenn Sie das Routing zu einem Ziel in einem anderen Projekt vornehmen, wählen Sie Anderes Projekt aus. Sie müssen die Informationen zum Logging, BigQuery, Cloud Storage oder Pub/Sub-Dienst und zum Ziel angeben.

    So leiten Sie Logeinträge an einen Cloud Logging-Log-Bucket weiter, der die Region global verwendet und in einem anderen Google Cloud-Projekt definiert ist:

    logging.googleapis.com/projects/DESTINATION_PROJECT/locations/global/buckets/BUCKET_NAME
    

    So leiten Sie Logeinträge an ein BigQuery-Dataset weiter:

    bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
    

    So leiten Sie Logeinträge an einen Cloud Storage-Bucket weiter:

    storage.googleapis.com/BUCKET_NAME
    

    So leiten Sie Logeinträge an ein Pub/Sub-Thema weiter:

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

    Wenn Sie Logs zwischen Cloud-Projekten weiterleiten, benötigen Sie trotzdem die entsprechenden Zielberechtigungen.

  6. Führen Sie im Bereich Logs auswählen, die in der Senke enthalten sein sollen die folgenden Schritte aus:

    1. Geben Sie im Feld Einbeziehungsfilter 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 Logs der ausgewählten Ressource an das Ziel weitergeleitet.

      Sie können beispielsweise einen Filter erstellen, um alle Datenzugriffslogs an einen einzelnen Logging-Bucket weiterzuleiten. Dieser Filter sieht in etwa so aus:

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

      Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.

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

  7. Optional: Gehen Sie im Bereich Logs zum Herausfiltern aus der Senke auswählen so vor:

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

    2. 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.

API

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

    • name: Eine Kennzeichnung für die Senke. Nachdem Sie die Senke erstellt haben, können Sie sie nicht mehr umbenennen, aber löschen und eine neue Senke erstellen.
    • destination: Der Dienst und das Ziel, zu dem Ihre Logs weitergeleitet werden sollen. Wenn das Senkenziel beispielsweise ein BigQuery-Dataset ist, sieht destination so aus:

      bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
      
  2. Geben Sie im Objekt LogSink die entsprechenden optionalen Informationen an:

    • filter: Legen Sie das Attribut filter so fest, dass es den Logeinträgen entspricht, die Sie in die Senke aufnehmen möchten. Wenn Sie keinen Filter festlegen, werden alle Logs aus Ihrem Cloud-Projekt an das Ziel weitergeleitet. Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.
    • exclusions: Legen Sie dieses Attribut 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 Attribut 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 der Senke 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.

gcloud

Führen Sie den folgenden gcloud logging sinks create Befehl aus, um eine Senke zu erstellen:

Geben Sie die entsprechenden Werte für die Variablen im Befehl so an:

  • SINK_NAME: Eine Kennzeichnung für die Senke. Nachdem Sie die Senke erstellt haben, können Sie sie nicht mehr umbenennen, aber löschen und eine neue Senke erstellen.
  • SINK_DESTINATION: Der Dienst und das Ziel, zu dem Ihre Logs weitergeleitet werden sollen. Wenn das Senkenziel beispielsweise ein BigQuery-Dataset ist, sieht SINK_DESTINATION so aus:

    bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
    
  • OPTIONAL_FLAGS enthält die folgenden Flags:

    • --log-filter: Verwenden Sie dieses Flag, um einen Filter festzulegen, der den Logeinträgen entspricht, die Sie in die Senke aufnehmen möchten. Wenn Sie keinen Filter festlegen, werden alle Logs aus Ihrem Cloud-Projekt an das Ziel weitergeleitet.
    • --exclusion: Verwenden Sie dieses Flag, um einen Ausschlussfilter für Logeinträge festzulegen, die Sie aus 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. Dieses Flag kann wiederholt werden. Sie können bis zu 50 Ausschlussfilter pro Senke erstellen.
    • --description: Verwenden Sie dieses Flag, um den Zweck oder Anwendungsfall für die Senke zu beschreiben.
gcloud logging sinks create SINK_NAME
SINK_DESTINATION OPTIONAL_FLAGS

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 mithilfe der Google Cloud CLI, einschließlich weiterer Flags und Beispiele, finden Sie in der Referenz zu gcloud logging sinks.

Es kann einige Stunden dauern, bis neue Logsenken für Cloud Storage-Buckets Routing-Logs starten. Senken für Cloud Storage werden stündlich verarbeitet, während andere Zieltypen in Echtzeit verarbeitet werden.

Informationen zum Aufrufen von Logs in den Senkenzielen finden Sie unter Weitergeleitete Logs suchen.

Nachdem Sie die Senke erstellt haben, können Sie die Anzahl und das Umfang der empfangenen Logeinträge mit den logging.googleapis.com/exports/-Messwerten einsehen.

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

Logs zwischen Log-Buckets in verschiedenen Cloud-Projekten weiterleiten

Sie können Logs an ein Ziel in einem anderen Cloud-Projekt weiterleiten, als dem Projekt, in dem die Senke erstellt wird.

Führen Sie dazu einen der folgenden Schritte aus:

  • Weisen Sie dem Dienstkonto Ihrer Senke die Rolle roles/logging.bucketWriter zu, um in das Ziel zu schreiben. Eine Anleitung finden Sie unter Zielberechtigungen.

  • Sie haben eine der folgenden IAM-Berechtigungen für das Cloud-Quellprojekt, von dem aus Sie Logs senden.

    • Inhaber (roles/owner)
    • Logging-Administrator (roles/logging.admin)
    • Autor von Log-Konfigurationen (roles/logging.configWriter)

    Wenn Sie einen neuen Logging-Bucket im Cloud-Zielprojekt erstellen, müssen Sie eine dieser Berechtigungen haben.

Senken verwalten

Nachdem die Senken erstellt wurden, können Sie folgende Aktionen für sie ausführen:

  • Senkendetails ansehen
  • Senke aktualisieren
  • Senke deaktivieren
  • Senke löschen
  • Fehler in Senke beheben
  • Volumen und Fehlerraten des Senkenlogs ansehen

Beachten Sie beim Löschen einer Senke Folgendes:

  • Sie können die _Default- und die _Required-Senke nicht löschen, aber Sie können _Default-Senken deaktivieren, damit keine Logs mehr an _Default-Logging-Buckets weitergeleitet werden.
  • Nach dem Löschen einer Senke werden keine Logeinträge mehr weitergeleitet.

Es kann einige Minuten dauern, bis alle Änderungen an einer Senke übernommen werden.

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

Console

  1. Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
    Zu Log Router

  2. Wählen Sie in der Google Cloud Console mit der Ressourcenauswahl das Cloud-Projekt aus, das die Senke enthält:

Auswahl eines Projekts aus dem Dropdown-Menü

  1. Wählen Sie die Organisation, den Ordner oder das Rechnungskonto mit der Senke aus, um die aggregierten Senken anzusehen.

Die Seite Log Router enthält eine Tabellenzusammenfassung für Senken. 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 Kennzeichnung 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 Senke.
  • Zuletzt aktualisiert: Datum und Uhrzeit der letzten Bearbeitung der Senke.

In jeder Tabellenzeile befindet sich ein Menü  mit folgenden Optionen:

  • Senkendetails ansehen: Name, Beschreibung, Zieldienst, Ziel und Ein- und Ausschlussfilter der Senke werden angezeigt. 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 Logs an das Ziel der Senke. Weitere Informationen zum Deaktivieren von Senken finden Sie unter Logaufnahme beenden.
  • Senke aktivieren: Ermöglicht das Aktivieren einer deaktivierten Senke und den Neustart der Weiterleitung von Logs zum Ziel der Senke.
  • Senke löschen: Ermöglicht das Löschen der Senke und das Beenden von Routing-Logs an das Ziel der Senke.
  • Fehlerbehebung für Senke: Öffnet den Log-Explorer, in dem Sie Fehler mit der Senke beheben können.
  • Senken-Logvolumen und Fehlerraten anzeigen: Öffnet den Metrics Explorer, in dem Sie Daten aus der Senke ansehen und analysieren können.

Durch einen Klick auf einen der Spaltennamen können Sie Daten in aufsteigender oder absteigender Reihenfolge sortieren.

API

  • Rufen Sie projects.sinks.list auf, um die Senken für Ihr 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.

  • Rufen Sie zum Deaktivieren einer Senke projects.sink.update auf und setzen Sie das Attribut disabled auf true.

    Rufen Sie projects.sink.update auf und legen Sie das Attribut disabled auf false fest, um die Senke wieder zu aktivieren.

  • Rufen Sie zum Löschen einer Senke projects.sinks.delete auf.

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

gcloud

  • Verwenden Sie den Befehl gcloud logging sinks list, um die Liste der Senken für Ihr 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 das entsprechende Flag, um die Ressource anzugeben, die die Senke enthält. Wenn Sie beispielsweise die Senke auf Organisationsebene erstellt haben, verwenden Sie das Flag --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 aus, 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 das Flag --disabled ein:

    gcloud logging sinks update _Default  --disabled
    

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

    gcloud logging sinks update _Default  --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.

Aufnahme von Logs beenden

Für jedes Cloud-Projekt erstellt Logging automatisch zwei Log-Buckets: _Required und _Default. Logging erstellt automatisch zwei Logsenken, _Required und _Default, die Logs an die entsprechend benannten Buckets weiterleiten.

Sie können die Senke _Required nicht deaktivieren. Für die im _Required-Log-Bucket gespeicherten Logdaten fallen weder Preise für die Aufnahme noch Speicherung an. Sie können die _Default-Senke deaktivieren, damit keine Logs in den Bucket _Default aufgenommen werden. Sie können auch alle benutzerdefinierten Senken deaktivieren.

Wenn Sie die Logaufnahme für den _Default-Bucket beenden, indem Sie alle Senken in Ihrem Cloud-Projekt deaktivieren, die Logs an den _Default-Bucket senden, werden Ihrem Cloud-Projekt für den _Default-Bucket keine neuen Gebühren für die Cloud Logging-Aufnahmegebühren angerechnet. Der _Default-Bucket ist leer, wenn alle zuvor aufgenommenen Logs im _Default-Bucket die Aufbewahrungsdauer des Buckets erfüllt haben.

So deaktivieren Sie Cloud-Projektsenken, die Logs an den _Default-Bucket weiterleiten:

Console

  1. Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
    Zu Log Router

  2. Filtern Sie die Senken nach Ziel und geben Sie _Default ein, um alle Senken zu ermitteln, die Logs an den _Default-Bucket weiterleiten.

    Suchen Sie alle Senken, die Logs an den Standard-Bucket weiterleiten.

  3. Wählen Sie für jede Senke das Menü und dann Senke deaktivieren aus.

Die Senken sind jetzt deaktiviert und Ihr Cloud-Projekt-Senken leiten keine Logs mehr an den _Default-Bucket weiter.

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

  1. Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
    Zu Log Router

  2. Filtern Sie die Senken nach Ziel und geben Sie _Default ein, um alle deaktivierten Senken zu ermitteln, die zuvor für das Weiterleiten von Logs an den _Default-Bucket konfiguriert wurden.

  3. Wählen Sie für jede Senke das Menü und dann Senke aktivieren aus.

API

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

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

  2. Wenn Sie beispielsweise die Senke _Default deaktivieren möchten, rufen Sie projects.sink.update auf und legen Sie das Attribut disabled auf true fest.

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

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

Wenn Sie eine Senke wieder aktivieren möchten, rufen Sie projects.sink.update auf und setzen das Attribut disabled auf false.

gcloud

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

    gcloud logging sinks list
    
  2. Identifizieren Sie alle Senken, die an den _Default-Bucket 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. Um die Senke _Default zu deaktivieren, verwenden Sie beispielsweise den Befehl gcloud logging sinks update und fügen das Flag --disabled ein:

    gcloud logging sinks update _Default  --disabled
    

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

Wiederholen Sie die obigen Schritte, um die anderen Senken in Ihrem 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 das Flag --disabled und fügen Sie das Flag --no-disabled ein:

gcloud logging sinks update _Default  --no-disabled

Zielberechtigungen festlegen

In diesem Abschnitt wird beschrieben, wie Sie Logging die IAM-Berechtigungen (Identitäts- und Zugriffsverwaltung) zum Schreiben von Logs an das Ziel der Senke gewähren. Eine vollständige Liste der Logging-Rollen und -Berechtigungen finden Sie unter Zugriffssteuerung.

Wenn Sie Logsenken-Buckets im selben Cloud-Projekt mithilfe einer Senke weiterleiten, wird kein neues Dienstkonto erstellt. Die Senke funktioniert ohne die Identität des Autors. Wenn Sie eine Senke zum Weiterleiten von Logs zwischen Logging-Buckets in verschiedenen Cloud-Projekten verwenden, wird ein neues Dienstkonto erstellt.

Im Folgenden finden Sie die Anleitung zum Festlegen von Cloud-Berechtigungen auf Projektebene für die Senke zum Ziel. Anstelle eines Cloud-Projekts können Sie ein Rechnungskonto, einen Ordner oder eine Organisation angeben:

Console

  1. So rufen Sie die Identität des Autors der Senke (eine E-Mail-Adresse) der neuen Senke ab:

    1. Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
      Zu Log Router

    2. Wählen Sie Menü und dann Senkendetails ansehen aus. Die Identität des Autors wird im Bereich Senkendetails angezeigt.

  2. 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.

  3. Klicken Sie auf Kopieren , um die Identität des Autors der Senke in die Zwischenablage zu kopieren.

  4. Wenn Sie die Rolle Inhaber für das Ziel haben, fügen Sie dem Ziel das Dienstkonto so hinzu:

    • Wenn Sie Cloud Storage-Ziele verwenden, fügen Sie die Autorenidentität der Senke dem Cloud Storage-Bucket hinzu 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, einschließlich Splunk, verwenden, fügen Sie die Autorenidentität der Senke dem Thema hinzu und weisen ihr die Rolle Pub/Sub-Publisher zu.
    • Fügen Sie für Logging-Bucket-Ziele in verschiedenen Cloud-Projekten dem Ziel-Log-Bucket die Identität des Autors der Senke hinzu und weisen Sie die Berechtigung roles/logging.bucketWriter zu.

    Wenn Sie nicht Inhaber-Zugriff auf das Senkenziel haben, senden Sie den Namen des Dienstkontos für die Identität des Autors einem Nutzer mit dieser Fähigkeit zu. Bitten Sie die betreffende Person, die vorangegangenen Schritte auszuführen, um dem Senkenziel die Identität des Autors hinzuzufügen.

API

  1. Rufen Sie die API-Methode projects.sinks.list auf, um die Senken in Ihrem Google Cloud-Projekt aufzulisten.

  2. Suchen Sie die Senke, deren Berechtigungen Sie ändern möchten. Wenn die Senkendetails einen JSON-Schlüssel mit dem Label "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.

  3. Wenn Sie die IAM-Rolle Inhaber für das Ziel haben, fügen Sie dem Ziel das Dienstkonto so hinzu:

    • Wenn Sie Cloud Storage-Ziele verwenden, fügen Sie die Autorenidentität der Senke dem Cloud Storage-Bucket hinzu 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, einschließlich Splunk, verwenden, fügen Sie die Autorenidentität der Senke dem Thema hinzu und weisen ihr die Rolle Pub/Sub-Publisher zu.
    • Wenn Sie Logging-Bucket-Ziele in verschiedenen Cloud-Projekten verwenden möchten, fügen Sie die Autorenidentität der Senke dem Ziel-Log-Bucket hinzu und weisen die Berechtigung roles/logging.bucketWriter zu.

    Wenn Sie nicht Inhaber-Zugriff auf das Senkenziel haben, senden Sie den Namen des Dienstkontos für die Identität des Autors einem Nutzer mit dieser Fähigkeit zu. Bitten Sie die betreffende Person, die vorangegangenen Schritte auszuführen, um dem Senkenziel die Identität des Autors hinzuzufügen.

gcloud

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

    gcloud logging sinks describe SINK_NAME
    
  2. 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 das Feld writerIdentity kein Detail enthält, müssen Sie keine Zielberechtigungen für die Senke konfigurieren.

    Der Wert des Felds SERVICE_ACCOUNT in den folgenden Schritten ist die Identität des Autors, die in etwa so aussieht:

    serviceAccount:service-p-123456789012@gcp-sa-logging.iam.gserviceaccount.com
    
  3. Wenn Sie die IAM-Rolle Inhaber für das Ziel haben, fügen Sie dem Ziel das Dienstkonto so hinzu:

    • Wenn Sie Cloud Storage-Ziele verwenden, fügen Sie die Autorenidentität der Senke dem Cloud Storage-Bucket hinzu 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, einschließlich Splunk, verwenden, fügen Sie die Autorenidentität der Senke dem Thema hinzu und weisen ihr die Rolle Pub/Sub-Publisher zu.
    • Wenn Sie Logging-Bucket-Ziele in verschiedenen Cloud-Projekten verwenden möchten, fügen Sie die Autorenidentität der Senke dem Ziel-Log-Bucket hinzu und weisen die Berechtigung roles/logging.bucketWriter zu.

    Wenn Sie nicht Inhaber-Zugriff auf das Senkenziel haben, senden Sie den Namen des Dienstkontos für die Identität des Autors einem Nutzer mit dieser Fähigkeit zu. Bitten Sie die betreffende Person, die vorangegangenen Schritte auszuführen, um dem Senkenziel die Identität des Autors hinzuzufügen.

    Wenn Sie beispielsweise Logs zwischen Logging-Buckets in verschiedenen Cloud-Projekten weiterleiten, fügen Sie dem Dienstkonto roles/logging.bucketWriter so hinzu:

    1. Rufen Sie die Identity and Access Management-Richtlinie für das Ziel-Cloud-projekt ab und schreiben Sie sie in eine lokale Datei im JSON-Format:

      gcloud projects get-iam-policy DESTINATION_PROJECT_ID --format json > output.json
      
    2. Fügen Sie eine IAM-Bedingung hinzu, die das Dienstkonto nur zum Schreiben in den von Ihnen erstellten Cloud Logging-Bucket berechtigt. Beispiel:

      {
      "bindings": [
       {
         "members": [
           "user:username@gmail.com"
         ],
         "role": "roles/owner"
       },
       {
         "members": [
           "SERVICE_ACCOUNT"
         ],
         "role": "roles/logging.bucketWriter",
         "condition": {
             "title": "Bucket writer condition example",
             "description": "Grants logging.bucketWriter role to service account SERVICE_ACCOUNT used by log sink [SINK_NAME]",
             "expression":
               "resource.name.endsWith(\'locations/global/buckets/BUCKET_ID\')"
         }
       }
      ],
      "etag": "BwWd_6eERR4=",
      "version": 3
      }
    3. Aktualisieren Sie die IAM-Richtlinie:

      gcloud projects set-iam-policy DESTINATION_PROJECT_ID output.json
      

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 der Ein- und Ausschlussfilter hilfreich sein können, finden Sie unter Beispielabfragen.

_Default-Senkenfilter wiederherstellen

Wenn Sie den Filter für die Senke _Default bearbeitet haben, sollten Sie den Standardfilter wiederherstellen. Geben Sie dazu den folgenden Einschlussfilter ein:

  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-Logs 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-Knotenlogs 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")

Um das Volumen von Google Kubernetes Engine Knoten-, Pod- und Container-Logdaten, die in Cloud Logging aufgenommen, zu sehen, verwenden Sie Metrics-Explorer in Cloud Monitoring.

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

Verwenden Sie den folgenden Filter, um Dataflow-Logs 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 in Cloud Monitoring, um die in Cloud Logging aufgenommene Menge an Dataflow-Logdaten aufzurufen.

Support

In Cloud Logging können Sie zwar Logs von der Aufnahme ausschließen, doch sollten Sie Logs beibehalten, die für den Support hilfreich sein. Anhand dieser Logs können Probleme mit Ihren Anwendungen schneller behoben und identifiziert werden.

GKE-Systemlogs 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 Logs 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") aufzunehmen. 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 ansehen andernfalls.

Nächste Schritte