Zusammengefasste Exporte

Sie können eine zusammengefasste Exportsenke erstellen, die Logeinträge aus allen Projekten, Ordnern und Rechnungskonten einer Google Cloud Platform-Organisation exportieren kann. Beispielsweise können Sie Audit-Log-Einträge aus den Projekten einer Organisation zusammenfassen und an einen zentralen Speicherort exportieren.

Konzept

Wenn Sie Exporte nicht zusammenfassen, können mit jeder Exportsenke nur die Logeinträge aus der Ressource exportiert werden, in der die Senke erstellt wurde: einem GCP Projekt, Ordner oder Rechnungskonto oder einer Organisation.

Wenn Sie die Funktion für den zusammengefassten Export verwenden möchten, erstellen Sie eine Senke in einer GCP-Organisation oder einem Ordner und setzen Sie den Parameter includeChildren der Senke auf True. Diese Senke kann dann Logeinträge aus der Organisation oder dem Ordner sowie rekursiv aus enthaltenen Ordnern, Rechnungskonten oder Projekten exportieren. Mit dem Filter der Senke können Sie Logeinträge aus Projekten, Ressourcentypen oder benannten Logs angeben.

Informationen zum Erstellen von Exportsenken finden Sie unter Logs in der API exportieren und Befehlszeilentools zum Erstellen von Senken verwenden.

Exportziel erstellen

Das Exportziel für Logsenken muss vor der Senke erstellt werden. Dies erfolgt über über das gcloud-Befehlszeilentool, die GCP Console oder die GCP APIs.

Für Exportsenken werden die folgenden Exportziele unterstützt:

Das Exportziel kann in jedem GCP-Projekt und in jeder Organisation erstellt werden, wenn das Dienstkonto der Logsenke Berechtigungen zum Schreiben in das Exportziel hat.

Zusammengefasste Exportsenke erstellen

Sie können zum Erstellen einer zusammengefassten Exportsenke in GCP-Ordnern, Abrechnungskonten oder Organisationen entweder die Stackdriver Logging API oder das gcloud-Befehlszeilentool verwenden.

Logging API

Verwenden Sie zum Erstellen einer Logsenke organisations.sinks.create, folders.sinks.create oder billingAccounts.sinks.create in der Stackdriver Logging API. Bereiten Sie die Argumente für die Methode so vor:

  1. Legen Sie als parent-Parameter die GCP-Organisation, den Ordner oder das Rechnungskonto fest, in dem die Senke erstellt werden soll. Geben Sie als übergeordnete Ressource eine der folgenden an:

    • organizations/[ORGANIZATION_ID]
    • folders/[FOLDER_ID]
    • billingAccounts/[BILLING_ACCOUNT_ID]
  2. Legen Sie im LogSink-Objekt im Methodenanfragetext Folgendes fest:

    • Setzen Sie includeChildren auf True.

    • Legen Sie das Attribut filter fest und denken Sie dabei daran, dass mit dem Filter Logeinträge aus all Ihren Projekten ausgewählt werden.

      Einige Beispiele für nützliche Filter finden Sie unter Filter mit zusammengefassten Exporten verwenden.

    • Legen Sie die verbleibenden LogSink-Felder wie gewohnt für Senken fest. Weitere Informationen finden Sie unter Senken erstellen.

  3. Rufen Sie zum Erstellen der Senke die Methode organization.sinks.create oder folders.sinks.create auf.

  4. Stellen Sie anhand der API-Antwort den Namen des Dienstkontos fest, mit dem die Senke erstellt wurde.

  5. Weisen Sie dem Dienstkonto Schreibzugriff auf das Exportziel zu.

    Wenn Sie keine Berechtigung für diese Änderung im Exportziel haben, senden Sie den Namen des Dienstkontos an einen Nutzer mit der erforderlichen Berechtigung.

    Weitere Informationen zum Zuweisen von Ressourcenberechtigungen für Dienstkonten finden Sie unter Dienstkonten Rollen zuweisen.

gcloud

Verwenden Sie zum Erstellen einer Logging-Senke den Befehl logging sinks create.

  1. Geben Sie den Namen, das Exportziel, den Logfilter und die ID des Ordners, des Rechnungskontos oder der Organisation an.

    Richten Sie einen aggregierten Export auf der Ordnerebene zum Beispiel so ein:

    gcloud logging sinks create [SINK_NAME] \
    storage.googleapis.com/[BUCKET_NAME] --include-children \
    --folder=[FOLDER_ID] --log-filter="logName:activity"

    Hinweise:

    • Ersetzen Sie --folder=[FOLDER_ID] durch --organization=[ORGANIZATION_ID], um eine Senke auf Organisationsebene zu erstellen. Für ein Rechnungskonto ersetzen Sie dies durch --billing-account=[BILLING_ACCOUNT_ID].

    • Damit die Senke alle Projekte in der Organisation umfasst, muss das Flag --include-children gesetzt sein, selbst wenn das Flag --organization an create übergeben wird. Wenn dieser Wert auf false (Standardeinstellung) gesetzt ist, exportiert eine Senke nur Logs aus der Hostressource.

    • Sie benötigen die Cloud IAM-Rolle Autor von Logkonfigurationen für das übergeordnete Element, um die Senke zu erstellen. Weitere Informationen zu Cloud IAM-Rollen für Logging finden Sie in der Anleitung zur Zugriffssteuerung.

    • Einige Beispiele für nützliche Filter finden Sie unter Filter mit zusammengefassten Exporten verwenden.

  2. Ermitteln Sie anhand der Ausgabe des Befehls den Namen des Dienstkontos, mit dem die Senke erstellt wurde.

  3. Weisen Sie dem Dienstkonto Schreibzugriff auf das Exportziel zu.

    Wenn Sie keine Berechtigung für diese Änderung im Exportziel haben, senden Sie den Namen des Dienstkontos an einen Nutzer mit der erforderlichen Berechtigung.

    Weitere Informationen zum Zuweisen von Ressourcenberechtigungen für Dienstkonten finden Sie unter Dienstkonten Rollen zuweisen.

Filter mit zusammengefassten Exporten verwenden

Wie alle anderen Senken enthält auch die zusammengefasste Exportsenke einen Filter für die Auswahl einzelner Logeinträge. Weitere Informationen zu Filtern finden Sie unter Erweiterte Logfilter.

Im Folgenden finden Sie einige Beispiele für Filtervergleiche, die in Verbindung mit der zusammengefassten Exportfunktion nützlich sind. In manchen Beispielen wird folgende Notation verwendet:

  • : ist der Teilstringoperator. Ersetzen Sie ihn nicht durch den Operator =.
  • ... steht für alle weiteren Filtervergleiche.
  • Variablen sind in Klammern [] angegeben. Ersetzen Sie sie durch gültige Werte.

Audit-Logs auswählen

Wählen Sie eines der folgenden Vergleichsbeispiele aus, um Audit-Logs zu exportieren:

log_name:"/logs/cloudaudit.googleapis.com"
log_name:"/logs/cloudaudit.googleapis.com%2Factivity" AND...
log_name:"/logs/cloudaudit.googleapis.com%2Fdata_access" AND...
log_name:"/logs/cloudaudit.googleapis.com%2Fsystem_event" AND...

Informationen zu Audit-Logs finden Sie unter Cloud-Audit-Logging.

Exportquelle auswählen

Verwenden Sie eines der folgenden Vergleichsbeispiele, um Logs aus bestimmten Projekten, Ordnern oder Organisationen zu exportieren:

logName:"projects/[PROJECT_ID]/logs/" AND ... 
logName:("projects/[PROJECT_A_ID]/logs/" OR "projects/[PROJECT_B_ID]/logs/") AND ... 
logName:"folders/[FOLDER_ID]/logs/" AND ... 
logName:"organizations/[ORGANIZATION_ID]/logs/" AND ... 

Ressourcen auswählen

Verwenden Sie mehrere Vergleiche, um die Ressource genau anzugeben und um Logs aus bestimmten Ressourcen in einem Projekt zu exportieren:

logName:"projects/[PROJECT_ID]/logs" AND
resource.type=[RESOURCE_TYPE] AND
resource.labels.instance_id=[INSTANCE_ID]

Eine Liste der Ressourcentypen finden Sie unter Überwachte Ressourcentypen.

Stichproben von Logeinträgen

Fügen Sie die integrierte Funktion sample hinzu, um nach dem Zufallsprinzip Stichproben von Log-Einträgen zu exportieren. Wenn Sie beispielsweise nur 10 % der Logeinträge exportieren möchten, die mit dem aktuellen Filter übereinstimmen, fügen Sie Folgendes hinzu:

sample(insertId, 0.10) AND ...

Weitere Informationen finden Sie in der Funktion sample.

Weitere Informationen zu Stackdriver Logging-Filtern finden Sie unter Erweiterte Logging-Filter.

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Stackdriver Logging