Logs an unterstützte Ziele weiterleiten

In diesem Dokument wird erläutert, wie Sie Senken erstellen und verwalten, die Logeinträge weiterleiten die aus einem Google Cloud-Projekt stammen, an unterstützte Ziele senden.

Wenn das Ziel einer Senke kein Log-Bucket im Google Cloud-Projekt ist aus dem ein Logeintrag stammt, ist ein Dienstkonto erforderlich. Cloud Logging erstellt und verwaltet dieses Dienstkonto automatisch. Möglicherweise müssen Sie jedoch die Berechtigungen Dienstkonto. Sie können ein Dienstkonto erstellen und verwalten das von Senken in mehreren Projekten verwendet wird. Weitere Informationen finden Sie unter Logabflüsse mit vom Nutzer verwalteten Dienstkonten konfigurieren.

Übersicht

Senken bestimmen, wie Cloud Logging leitet Logeinträge weiter. Mithilfe von Senken können Sie einige oder alle Logeinträge an die folgenden Ziele weiterleiten:

  • Cloud Logging-Bucket: Stellt Speicher in Cloud Logging bereit. In einem Log-Bucket können Logeinträge gespeichert werden die von mehreren Google Cloud-Projekten empfangen werden. Der Log-Bucket kann sich im selben Projekt befinden, in dem die Logeinträge stammen, oder in einem anderen Projekt. Informationen zum Ansehen von Logeinträgen, die in Log-Buckets gespeichert sind, finden Sie unter Logs abfragen und ansehen und An Cloud Logging-Buckets weitergeleitete Logs ansehen.

    Sie können Ihre Cloud Logging-Daten zusammen mit anderen Daten durch Upgrade eines Log-Buckets zur Verwendung Loganalysen und anschließendes Erstellen eines verknüpften Datasets, das schreibgeschützt ist Dataset, das in BigQuery Studio und Looker Studio abgefragt werden kann Seiten.

  • BigQuery-Dataset zum Speichern von Logeinträgen in einem beschreibbares BigQuery-Dataset. Das BigQuery-Dataset kann sich im selben Projekt befinden, aus dem die Logeinträge stammen, oder aus einem anderen Projekt arbeiten. Sie können Big-Data-Analysefunktionen auf die gespeicherten Logeinträge anwenden. Informationen zum Aufrufen von zu BigQuery weitergeleiteten Logeinträgen finden Sie unter Zu BigQuery weitergeleitete Logs ansehen.

  • Cloud Storage-Bucket: Ermöglicht das Speichern von Logeinträgen in Cloud Storage. Der Cloud Storage-Bucket kann sich im selben Projekt wie die Protokolleinträge oder in einem anderen Projekt befinden. Logeinträge werden als JSON-Dateien gespeichert. Informationen zum Aufrufen von Logeinträgen, die an Cloud Storage weitergeleitet wurden, Siehe An Cloud Storage weitergeleitete Logs ansehen.
  • Pub/Sub-Thema: Bietet Unterstützung für Integrationen von Drittanbietern. Logeinträge werden als JSON formatiert und dann an ein Pub/Sub weitergeleitet . Das Thema kann sich im selben Projekt wie die Protokolleinträge oder in einem anderen Projekt befinden. Informationen zum Aufrufen von Logeinträgen, die weitergeleitet an Pub/Sub, siehe An Pub/Sub weitergeleitete Logs ansehen

  • Google Cloud-Projekt: Sie können Protokolleinträge an ein anderes Google Cloud-Projekt weiterleiten. In verarbeiten die Senken im Zielprojekt Logeinträge.

Senken gehören zu einer bestimmten Google Cloud-Ressource: ein Rechnungskonto, einen Ordner oder eine Organisation. Wenn die Ressource ein Logeintrag verarbeitet wird, verarbeitet jede Senke in der Ressource den Logeintrag. Wenn ein mit den Filtern der Senke übereinstimmt, lautet der Logeintrag an das Ziel der Senke weitergeleitet.

Normalerweise leiten Senken nur die Logeinträge weiter, die aus einer Ressource stammen. Für Ordner und Organisationen können Sie jedoch aggregierte Senken erstellen, über die 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 Logs auf Organisationsebene sortieren und an unterstützte Ziele weiterleiten.

Zum Erstellen und Verwalten von Senken können Sie die Google Cloud Console verwenden, die Cloud Logging API und die Google Cloud CLI Wir empfehlen, Sie die Google Cloud Console verwenden:

  • Auf der Seite Logs Router sind alle Senken aufgeführt und Sie haben die Möglichkeit, sie zu verwalten.
  • 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.

Hinweise

In der Anleitung in diesem Dokument wird beschrieben, wie Sie Senken auf Google Cloud-Projektebene erstellen und verwalten. Mit demselben Verfahren können Sie eine Sink erstellen, die Logeinträge weiterleitet, die aus einer Organisation, einem Ordner oder einem Rechnungskonto stammen.

Gehen Sie dazu so vor:

  1. Enable the Cloud Logging API.

    Enable the API

  2. Ihr Google Cloud-Projekt muss Logeinträge enthalten, die Sie im Log-Explorer sehen können.

  3. Um die Berechtigungen zu erhalten, die Sie zum Erstellen, Ändern oder Löschen einer Senke benötigen, bitten Sie Ihren Administrator, Ihnen IAM-Rolle Autor von Logkonfigurationen (roles/logging.configWriter) für Ihr Projekt 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 Gewähren von IAM-Rollen finden Sie unter in der Anleitung zur Zugriffssteuerung von Logging

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

    Wenn Sie Logeinträge an ein Ziel weiterleiten möchten, muss dieses Ziel vorhanden sein, bevor Sie die Senke erstellen. Sie können das Ziel in einem beliebigen Google Cloud-Projekt jeder Organisation erstellen.

  5. Lesen Sie vor dem Erstellen einer Senke die für die Senkenziel. Weitere Informationen finden Sie in der Abschnitt Zielbeschränkungen in diesem Dokument.

  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.

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

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

Senke erstellen

Nachfolgend finden Sie eine Anleitung zum Erstellen einer Senke in einem Google Cloud-Projekt. Mit demselben Verfahren können Sie Logeinträge weiterleiten, die aus Eine Organisation, einen Ordner oder ein Rechnungskonto:

  • Sie können bis zu 200 Senken pro Google Cloud-Projekt erstellen.
  • Geben Sie keine vertraulichen Informationen in Senkenfilter ein. Senkenfilter werden wie Dienstdaten behandelt.
  • Es kann einige Stunden dauern, bis das Weiterleiten von Logeinträgen für neue Senken für Cloud Storage-Buckets beginnt. Senken in Cloud Storage werden stündlich verarbeitet, während andere Zieltypen werden in Echtzeit verarbeitet.
  • Sie können Logeinträge nicht an verknüpfte BigQuery-Datasets weiterleiten, die nur lesbar sind. Wenn Sie Logeinträge weiterleiten möchten, in BigQuery hochladen, muss das Ziel-Dataset schreibgeschützt sein.

  • Das Schema für BigQuery-Datasets wird nicht von Senken definiert. Stattdessen wird das Schema für die Zieltabelle durch den ersten von BigQuery empfangenen Logeintrag bestimmt. Weitere Informationen finden Sie unter BigQuery-Schema für weitergeleitete Logs.

  • Informationen zum Aufrufen von Logeinträgen im Senkenziel Siehe An Cloud Logging-Buckets weitergeleitete Logs ansehen

  • Die Anzahl und das Volumen der weitergeleiteten Logeinträge finden Sie in der logging.googleapis.com/exports/-Messwerte.

  • Der Log-Explorer fügt implizit den Konjunktionseinschränkung, AND, zwischen den im Abfragebereich angezeigten Anweisungen. Wenn Zeile 1 beispielsweise resource.type = "gce_instance" und Zeile 2 severity >= "ERROR" ist, lautet die Abfrage resource.type = "gce_instance" AND severity >= "ERROR". Wenn Sie eine im Log-Explorer angezeigte Abfrage in einem anderen Kontext verwenden möchten, z. B. für den Einschluss- oder Ausschlussfilter einer Senke, müssen Sie die Abfrage ändern und die konjunktiven Einschränkungen hinzufügen. Weitere Informationen finden Sie unter Logging-Abfragesprache.

So erstellen Sie eine Senke:

Console

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

    Zum Logrouter

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

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

    Wenn Sie z. B. Ihre Datenzugriffs-Logeinträge das Projekt namens Project-A in einen Log-Bucket im Projekt namens Project-B und dann 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 aus und Ziel mithilfe des Menüs Senkendienst auswählen an. Führen Sie einen der Folgendes:

    • So leiten Sie Logeinträge an einen Dienst weiter, der sich im selben Google Cloud-Projekt 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 oder erstellen Sie es. Dataset zum Empfangen der weitergeleiteten Logeinträge. Sie haben auch die Möglichkeit, zu verwenden Partitionierte Tabellen.
      • Cloud Storage-Bucket: Wählen Sie den gewünschten Bucket aus oder erstellen Sie ihn. Cloud Storage-Bucket zum Empfangen der weitergeleiteten Logeinträge.
      • 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 Protokolleinträge an ein anderes Google Cloud-Projekt weiterleiten möchten, wählen Sie Google Cloud-Projekt aus und geben Sie dann den vollqualifizierten Namen für das Ziel ein. Informationen zur Syntax finden Sie in der Zielpfadformate:

    • So leiten Sie Logeinträge an einen Dienst in einem anderen Google Cloud-Projekt weiter:

      1. Wählen Sie Sonstige Ressource aus.
      2. Geben Sie den voll qualifizierten Namen für das Ziel ein. Informationen zur Syntax finden Sie unter Zielortpfadformate.
  6. Geben Sie die Logeinträge an, die eingeschlossen werden sollen:

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

    2. Geben Sie im Feld Einschlussfilter erstellen einen Filterausdruck ein, der den Logeinträgen entspricht, die Sie aufnehmen möchten. Weitere Informationen zur Syntax zum Erstellen 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 Datenzugriffs-Logeinträ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")
      

      Die Länge eines Filters darf 20.000 Zeichen nicht überschreiten.

    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 eingeschlossene Logeinträge:

    1. Rufen Sie den Bereich Auswählen zum Filtern aus der Senke 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 an das Ziel der Senke zu schreiben. Weitere Informationen finden Sie unter Legen Sie Zielberechtigungen fest.

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 Sinks 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 wie unter Zielpfadformate beschrieben auf den entsprechenden Pfad fest.

      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 können Sie einen Ausschlussfilter für Logeinträge festlegen, die nicht an die 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; können Sie bis zu 50 Ausschlussfilter pro Senke.
    • --description: Verwenden Sie diese Option, um den Zweck oder Anwendungsfall zu beschreiben. für die Spüle.

    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, siehe die Referenz zu gcloud logging sinks.

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

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

REST

  1. Verwenden Sie projects.sinks.create in der Logging API, um eine Logging-Senke in Ihrem Google Cloud-Projekt zu erstellen. Geben Sie im LogSink-Objekt die 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. So leiten Sie Logeinträge an ein anderes Projekt weiter: oder zu einem Ziel führen, sich in einem anderen Projekt befindet, legen Sie das Feld destination mit der entsprechenden Pfad, wie in den Zielpfadformate:

      Wenn das Senkenziel beispielsweise ein Pub/Sub- Thema hat, sieht der destination so aus:

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

    • filter : Legen Sie filter fest. entsprechend den Logeinträgen, die Sie in die Senke aufnehmen möchten. Wenn Wenn Sie keinen Filter festlegen, werden alle Logeinträge aus Ihrer Google Cloud-Projekte sind an das Ziel weitergeleitet. Beachten Sie, dass ein Filter nicht länger als 20.000 Zeichen sein darf.
    • exclusions: Legen Sie für dieses Feld die gewünschten Logeinträge fest. um sie aus der Senke auszuschließen. 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 Anwendungsfall für in die Spüle.
  3. Rufen Sie projects.sinks.create auf, um die Senke zu erstellen.

  4. Wenn die API-Antwort einen JSON-Schlüssel mit der Kennzeichnung "writerIdentity" enthält, gewähren Sie dem Dienstkonto des Sinks die Berechtigung zum Schreiben in das Sink-Ziel. Weitere Informationen finden Sie unter Zielberechtigungen festlegen.

    Sie müssen keine Zielberechtigungen festlegen, wenn die API-Antwort keinen JSON-Schlüssel mit der Kennzeichnung "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.

Zielpfadformate

Wenn Sie Logeinträge an einen Dienst weiterleiten, der sich in einem anderen Projekt befindet, müssen Sie Stellen Sie die Senke mit dem vollständig qualifizierten Namen für den Dienst bereit. Wenn Sie Protokolleinträge an ein anderes Google Cloud-Projekt weiterleiten, müssen Sie dem Sink den vollständig qualifizierten Namen des Zielprojekts angeben:

  • Cloud Logging-Log-Bucket:

    logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
    
  • 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
    

Senken verwalten

Nachdem die Senken erstellt wurden, können Sie dafür die folgenden Aktionen ausführen. Es kann einige Minuten dauern, bis alle an einer Senke vorgenommenen Änderungen wirksam 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 Logging-Bucket _Default weitergeleitet werden.
    • Wenn Sie die _Default-Senke für alle neuen Google Cloud-Projekte oder ‑Ordner deaktivieren möchten, die in Ihrer Organisation erstellt werden, können Sie [default resource settings][default-settings] konfigurieren.
  • Löschen

    • Die Senken _Default und _Required können nicht gelöscht werden.
    • Wenn Sie eine Senke löschen, werden keine Logeinträge mehr weitergeleitet.
    • Wenn die Senke ein eigenes Dienstkonto hat, wird dieses Dienstkonto beim Löschen der Senke ebenfalls gelöscht. Senken erstellt vor dem Ab dem 22. Mai 2023 gibt es dedizierte Dienstkonten. Senken erstellt ab dem 22. Mai 2023 ein gemeinsames Dienstkonto haben. Durch das Löschen der Senke wird das freigegebene Dienstkonto nicht gelöscht.
  • Fehler beheben

  • Logvolumen und Fehlerraten ansehen

Im Folgenden finden Sie eine Anleitung zum Verwalten eines Sinks in einem Google Cloud-Projekt. Anstelle eines Google Cloud-Projekts können Sie ein Rechnungskonto, 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 Monitoring ist.

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

Auf der Seite Logrouter werden die Senken in der ausgewählten Ressource angezeigt. Jede Tabellenzeile enthält Informationen zu den Eigenschaften 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 Senken-ID, die beim Erstellen der Senke angegeben wurde. Beispiel: _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 der Senke.
  • Zuletzt aktualisiert: Datum und Uhrzeit der letzten Bearbeitung des Sinks.

Für jede Tabellenzeile bietet das Dreipunkt-Menü  Weitere Aktionen die folgenden Optionen:

  • Senkendetails ansehen: Zeigt den Namen, die Beschreibung, den Zieldienst, das Ziel, die Einschluss- 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 Sinks finden Sie unter Speichern von Protokollen in Log-Buckets beenden.
  • Senke aktivieren: Ermöglicht das Aktivieren einer deaktivierten Senke und das Neustarten des Routings. Logeinträge zum Ziel der Senke.
  • Senke löschen: Ermöglicht das Löschen der Senke und das Beenden der Weiterleitung von Logeinträgen an Ziel der Senke.
  • Fehlerbehebung bei Senken: Öffnet den Log-Explorer, in dem Sie Fehler beheben können mit der Senke.
  • Volumen und Fehlerraten des Senkenlogs ansehen: Metrics Explorer wird geöffnet Hier können Sie Daten aus der Senke ansehen und analysieren.

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
    

    So rufen Sie eine Liste Ihrer aggregierten Senken verwendet werden, Option zur Angabe der Ressource, die die Senke enthält. Für Wenn Sie die Senke beispielsweise auf Organisationsebene erstellt haben, verwenden Sie die Methode --organization=ORGANIZATION_ID-Option zum Auflisten der Senken für das Unternehmen.

  • 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 die Methode gcloud logging sinks update , der der API-Methode entspricht, projects.sink.update, und fügen Sie die Option --disabled ein:

    gcloud logging sinks update SINK_NAME --disabled
    

    Verwenden Sie zum Reaktivieren der Senke die gcloud logging sinks update entfernen Sie die Option --disabled und fügen Sie den --no-disabled Option:

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

    gcloud logging sinks delete SINK_NAME
    

    Weitere Informationen zum Verwalten von Senken mithilfe der Google Cloud CLI, siehe die Referenz zu gcloud logging sinks.

REST

  • Rufen Sie zum Anzeigen der Senken für Ihr Google Cloud-Projekt den folgenden Befehl auf: projects.sinks.list

  • 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 auch die Senke deaktivieren oder wieder aktivieren.

  • Um eine Senke zu deaktivieren, Legen Sie das Feld disabled im Objekt LogSink auf true fest und Rufen Sie projects.sink.update an.

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

  • Wenn Sie einen Abfluss löschen möchten, rufen Sie projects.sinks.delete auf.

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

Speichern von Logeinträgen in Log-Buckets beenden

Sie können die Senke _Default und alle benutzerdefinierten Senken deaktivieren. Wenn Sie eine Senke deaktivieren, leitet die Senke Logeinträge nicht mehr an ihr Ziel weiter. Wenn Sie beispielsweise die _Default-Senke deaktivieren, werden keine Logeinträge an den _Default-Bucket weitergeleitet. Die _Default Bucket wird leer, wenn alle zuvor gespeicherten Logeinträge vorhanden sind die für den Bucket Aufbewahrungsdauer.

Die folgende Anleitung zeigt, wie Sie deaktivieren Sie die Senken Ihres Google Cloud-Projekts, die Logeinträge an den _Default Log-Buckets:

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 Monitoring ist.

  2. So finden Sie alle Senken, die Logeinträge an den Log-Bucket _Default weiterleiten: filtern Sie die Senken nach Ziel und geben Sie dann _Default ein.
  3. Wählen Sie für jede Senke Menü und Wählen Sie dann Senke deaktivieren aus.

    Die Senken sind jetzt deaktiviert und die Senken Ihres Google Cloud-Projekts längere Logeinträge an den Bucket _Default weiterleiten.

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

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

    Zum Logrouter

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring 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 Menü und Wählen Sie 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 gcloud logging sinks update und fügen Sie die Option --disabled ein. Um die Senke _Default zu deaktivieren, verwenden Sie beispielsweise 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.

Um die anderen Senken in Ihrem Google Cloud-Projekt zu deaktivieren, die das Routing ausführen in den Bucket _Default einfügen, wiederholen Sie die vorherigen Schritte.

Um eine Senke wieder zu aktivieren, verwenden Sie den gcloud logging sinks update entfernen Sie die Option --disabled und fügen Sie den --no-disabled Option:

gcloud logging sinks update _Default  --no-disabled

REST

  1. Rufen Sie zum Anzeigen der Senken für Ihr Google Cloud-Projekt die Methode Logging API-Methode projects.sinks.list

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

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

    Die Senke _Default ist jetzt deaktiviert. werden Logeinträge nicht mehr an Bucket _Default

Um die anderen Senken in Ihrem Google Cloud-Projekt zu deaktivieren, die das Routing ausführen in den Bucket _Default einfügen, wiederholen Sie die vorherigen Schritte.

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.

Zielberechtigungen festlegen

In diesem Abschnitt wird beschrieben, wie Sie Logging Berechtigungen zu Identity and Access Management, um Logeinträge in das Senkenziel zu schreiben. Eine vollständige Liste der Logging-Rollen und -Berechtigungen finden Sie Siehe Zugriffssteuerung.

In Cloud Logging wird beim Erstellen eines Sinks ein freigegebenes Dienstkonto für eine Ressource erstellt, es sei denn, das erforderliche Dienstkonto existiert bereits. Das Dienstkonto ist möglicherweise vorhanden, da dasselbe Dienstkonto für alle Senken in der zugrunde liegenden Ressource. Ressourcen können ein Google Cloud-Projekt, eine Organisation, ein Ordner oder ein Rechnungskonto sein.

Die Identität des Autors eines Sinks ist die Kennung des Dienstkontos, das mit diesem Sink verknüpft ist. Alle Senken haben eine Autorenidentität, mit Ausnahme von Senken, die in einen Log-Bucket im selben Google Cloud-Projekt schreiben, in dem den Ursprung des Logeintrags. Für die letztere Konfiguration ist ein Dienstkonto ist nicht erforderlich. Daher ist das Feld Identität des Autors der Senke angegeben. in der Konsole als None aufgeführt. Die API- und Google Cloud CLI-Befehle melden keine Autorenidentität.

Die folgende Anleitung gilt für Projekte, Ordner, Organisationen und Rechnungskonten:

Console

  1. Sie benötigen Inhaberzugriff auf das Google Cloud-Projekt, das das Ziel enthält. Wenn Sie nicht die Rolle Inhaber für das Ziel der Senke haben, bitten Sie einen Projektinhaber, die Identität des Autors als Hauptbenutzer hinzuzufügen.

  2. Um die Identität des Autors der Senke (eine E-Mail-Adresse) vom neue Senke:

    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 Monitoring ist.

    2. Wählen Sie in der Symbolleiste das Projekt aus, das den Abfluss 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.

  5. Wenn das Ziel ein Dienst in einem anderen Projekt ist ein anderes Projekt und wählen Sie in der Symbolleiste das Zielprojekt aus.

  6. Fügen Sie das Dienstkonto als IAM-Hauptkonto im Zielprojekt hinzu:

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

      Rufen Sie IAM auf.

      Wenn Sie diese Seite über die Suchleiste finden, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift IAM und Verwaltung.

    2. Wählen Sie das Zielprojekt aus.

    3. Klicken Sie auf Zugriff erlauben.

    4. Gewähren Sie dem Dienstkonto die erforderliche IAM-Rolle:

      • Fügen Sie für Cloud Storage-Ziele die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Storage Object Creator“ (roles/storage.objectCreator)
      • Wenn Sie BigQuery-Ziele verwenden, fügen Sie die Identität des Autors der Senke mithilfe von IAM als Principal hinzu und weisen Sie ihr dann die Rolle BigQuery-Datenbearbeiter (roles/bigquery.dataEditor) zu.
      • Fügen Sie für Pub/Sub-Ziele, einschließlich Splunk, die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Pub/Sub-Publisher“ (roles/pubsub.publisher)
      • Für Logging-Bucket-Ziele in verschiedenen Google Cloud-Projekte hinzufügen, fügen Sie die Identität des Autors der Senke als Hauptkonto hinzu. und gewähren Sie dann die Rolle „Log-Bucket-Autor“ (roles/logging.bucketWriter)
      • Fügen Sie für Ziele in Google Cloud-Projekten die Identität des Autors der Senke mithilfe von IAM als Hauptkonto hinzu und gewähren Sie ihm dann die Rolle Logautor (roles/logging.logWriter). Insbesondere benötigt ein Hauptkonto die Berechtigung logging.logEntries.route.

gcloud

  1. Sie benötigen die Rolle Inhaber für das Google Cloud-Projekt, das das Ziel enthält. Wenn Sie nicht die Rolle Inhaber für 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 Senkeinträge 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. Fügen Sie das Dienstkonto als IAM-Hauptkonto in der Zielprojekt:

    Bevor Sie den folgenden Befehl verwenden, nehmen Sie die folgenden Ersetzungen vor:

    • PROJECT_ID: Die Kennung des Projekts.
    • PRINCIPAL: Eine Kennung 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, Siehe Haupt-IDs.
    • ROLE: Eine IAM-Rolle.

      • Wenn Sie Cloud Storage-Ziele verwenden, fügen Sie die Identität des Autors der Senke mithilfe von IAM als Principal hinzu und weisen Sie ihr dann die Rolle Storage-Objekt-Ersteller (roles/storage.objectCreator) zu.
      • Wenn Sie BigQuery-Ziele verwenden, fügen Sie die Identität des Autors der Senke mithilfe von IAM als Principal hinzu und weisen Sie ihr dann die Rolle BigQuery-Datenbearbeiter (roles/bigquery.dataEditor) zu.
      • Fügen Sie für Pub/Sub-Ziele, einschließlich Splunk, die Identität des Autors der Senke hinzu. mithilfe von IAM als Hauptkonto festlegen und ihm dann die Rolle „Pub/Sub-Publisher“ (roles/pubsub.publisher)
      • Für Logging-Bucket-Ziele in verschiedenen Google Cloud-Projekte hinzufügen, fügen Sie die Identität des Autors der Senke als Hauptkonto hinzu. und gewähren Sie dann die Rolle „Log-Bucket-Autor“ (roles/logging.bucketWriter)
      • Fügen Sie für Google Cloud-Projektziele den Wert der Senke hinzu. Identität des Autors mithilfe von IAM als Hauptkonto festlegen und ihr dann den Rolle „Logautor“ (roles/logging.logWriter) Insbesondere benötigt ein Auftraggeber Berechtigung „logging.logEntries.route“.

    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 dem Dienstkonto eine Rolle zuzuweisen.

Zieleinschränkungen

In diesem Abschnitt werden zielspezifische Einschränkungen beschrieben:

  • Wenn Sie Logeinträge an einen Log-Bucket in einem anderen Google Cloud-Projekt weiterleiten, werden diese Logeinträge von Error Reporting nicht analysiert. Weitere Informationen finden Sie in der Übersicht zu Error Reporting.
  • Wenn Sie Logeinträge an BigQuery weiterleiten, muss das BigQuery-Dataset für das Schreiben aktiviert sein. Du kannst keine Route berechnen Logeinträge zu verknüpften Datasets, die schreibgeschützt sind.
  • Wenn Sie Logeinträge an andere Google Cloud-Projekte:

    • Es gibt ein Limit für einen Hop.

      Wenn Sie z. B. Logeinträge von einem Projekt A an Projekt B, dann können Sie die Logeinträge nicht von Projekt B in ein anderes Projekt verschieben.

    • Audit-Logs werden nicht an den Log-Bucket _Required im Ziel weitergeleitet Projekt arbeiten.

      Wenn Sie beispielsweise Logeinträge aus Projekt A an Projekt B weiterleiten, enthält der Log-Bucket _Required in Projekt A die Audit-Logs für Projekt A. Die Audit-Logs für das Projekt A werden nicht an das Projekt B weitergeleitet. Um diese Logeinträge weiterzuleiten, erstellen Sie eine Senke, deren Ziel ist ein Log-Bucket.

    • Wenn sich das Zielprojekt in einem anderen Ordner oder einer anderen Organisation befindet, werden die aggregierten Senken in diesem Ordner oder dieser Organisation um den Logeintrag weiterzuleiten.

      Angenommen, Projekt A befindet sich im Ordner X. Wenn ein Logeintrag aus dem Projekt A stammt, wird er von den aggregierten Senken im Ordner X und den Senken im Projekt A verarbeitet. Jetzt Angenommen, das Projekt A enthält eine Senke, die ihre Logeinträge an Projekt B, das sich im Ordner Y befindet. Die Logeinträge aus dem Projekt A die Senken im Projekt B durchlaufen; aber sie passieren nicht die aggregierten Senken im Ordner Y.

  • Wenn Sie im Log-Explorer die Logeinträge aufrufen möchten, die über einen aggregierten Datensammler an ein Projekt weitergeleitet wurden, legen Sie im Feld Bereich eingrenzen den Speicherbereich fest und wählen Sie dann eine Loganzeige aus, die Zugriff auf diese Logeinträge gewährt.

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 Waschbecken. Weitere Beispiele, die beim Erstellen von Einschluss- 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 der Senke _Default wird konfiguriert mit dem folgenden Einschlussfilter und einem leeren Ausschlussfilter:

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

So schließen Sie Google Kubernetes Engine-Knotenlogeinträge für GKE aus System logNames, verwenden Sie folgenden Filter:

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

Verwenden Sie den Metrics Explorer, um das Volumen der in Log-Buckets gespeicherten Google Kubernetes Engine-Knoten-, Pod- und Container-Logeinträge aufzurufen:

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

Um Dataflow-Logeinträge auszuschließen, die für supportability haben, verwenden Sie folgenden Filter:

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

Um das Volumen der in Log-Buckets gespeicherten Dataflow-Logs anzuzeigen, verwenden Sie Metrics Explorer.

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. Mithilfe dieser Logeinträge können Sie Probleme leichter beheben mit Ihren Anwendungen.

Beispielsweise sind GKE-Systemlogeinträge nützlich, Fehlerbehebung Ihre GKE-Anwendungen und -Cluster, die für Ereignisse in Ihrem Cluster generiert werden. Diese Logeinträge können Ihnen helfen, Ihren Anwendungscode oder die zugrunde liegende GKE Cluster verursacht den Anwendungsfehler. 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 sollten Sie mindestens Ihr System Logs (labels."dataflow.googleapis.com/log_type"="system") und Support Protokolle (labels."dataflow.googleapis.com/log_type"="supportability") in Log-Buckets. 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