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.
- Inhaber (
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
Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
Zu Log RouterWählen Sie ein vorhandenes Cloud-Projekt aus.
Wählen Sie Senke erstellen aus.
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.
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.
Führen Sie im Bereich Logs auswählen, die in der Senke enthalten sein sollen die folgenden Schritte aus:
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.
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.
Optional: Gehen Sie im Bereich Logs zum Herausfiltern aus der Senke auswählen so vor:
Geben Sie in das Feld Name des Ausschlussfilters einen Namen ein.
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.
Wählen Sie Senke erstellen aus.
API
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, siehtdestination
so aus:bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
Geben Sie im Objekt LogSink die entsprechenden optionalen Informationen an:
filter
: Legen Sie das Attributfilter
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 Funktionsample
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.
Rufen Sie projects.sinks.create auf, um die Senke zu erstellen.
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 Funktionsample
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.
- Inhaber (
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
Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
Zu Log RouterWählen Sie in der Google Cloud Console mit der Ressourcenauswahl das Cloud-Projekt aus, das die Senke enthält:
- 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ü more_vert 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 Attributdisabled
auftrue
.Rufen Sie
projects.sink.update
auf und legen Sie das Attributdisabled
auffalse
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-Methodeprojects.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-Methodeprojects.sinks.get
entspricht:gcloud logging sinks describe SINK_NAME
Verwenden Sie zum Aktualisieren einer Senke den Befehl
gcloud logging sinks update
, der der API-Methodeprojects.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 Namenmy-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-Methodeprojects.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-Methodeprojects.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
Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
Zu Log RouterFiltern Sie die Senken nach Ziel und geben Sie
_Default
ein, um alle Senken zu ermitteln, die Logs an den_Default
-Bucket weiterleiten.Wählen Sie für jede Senke das Menü more_vert 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:
Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
Zu Log RouterFiltern 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.Wählen Sie für jede Senke das Menü more_vert und dann Senke aktivieren aus.
API
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.Wenn Sie beispielsweise die Senke
_Default
deaktivieren möchten, rufen Sieprojects.sink.update
auf und legen Sie das Attributdisabled
auftrue
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
Verwenden Sie den Befehl
gcloud logging sinks list
, um die Liste der Senken für Ihr Cloud-Projekt aufzurufen, der der Logging API-Methodeprojects.sinks.list
entspricht:gcloud logging sinks list
Identifizieren Sie alle Senken, die an den
_Default
-Bucket weiterleiten. Verwenden Sie zum Beschreiben einer Senke, einschließlich des Zielnamens, den Befehlgcloud logging sinks describe
. Dies entspricht der Logging API-Methodeprojects.sinks.get
:gcloud logging sinks describe SINK_NAME
Um die Senke
_Default
zu deaktivieren, verwenden Sie beispielsweise den Befehlgcloud 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
So rufen Sie die Identität des Autors der Senke (eine E-Mail-Adresse) der neuen Senke ab:
Wählen Sie in der Google Cloud Console im Navigationsmenü Logging aus und klicken Sie dann auf Log Router:
Zu Log RouterWählen Sie Menü und dann more_vert Senkendetails ansehen aus. Die Identität des Autors wird im Bereich Senkendetails angezeigt.
Wenn der Wert des Felds
writerIdentity
eine E-Mail-Adresse enthält, fahren Sie mit dem nächsten Schritt fort. Wenn der WertNone
ist, müssen Sie keine Zielberechtigungen für die Senke konfigurieren.Klicken Sie auf Kopieren content_copy, um die Identität des Autors der Senke in die Zwischenablage zu kopieren.
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
Rufen Sie die API-Methode projects.sinks.list auf, um die Senken in Ihrem Google Cloud-Projekt aufzulisten.
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.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
Rufen Sie das Dienstkonto aus dem Feld
writerIdentity
der Senke ab:gcloud logging sinks describe SINK_NAME
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 FeldwriterIdentity
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
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: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
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 }
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
Wenn bei der Weiterleitung von Logs über Senken Probleme auftreten, lesen Sie Fehlerbehebung bei Routing und Senken.
Informationen zum Aufrufen von weitergeleiteten Logs in ihren Zielen sowie zum Formatieren und Organisieren der Logs finden Sie unter Logs in Senkenzielen ansehen.
Weitere Informationen zum Abfragen und Filtern mit der Logging-Abfragesprache finden Sie unter Logging-Abfragesprache.