In diesem Dokument werden aggregierte Senken beschrieben, mit denen Sie Logeinträge, die aus Ressourcen in einem Ordner oder einer Organisation stammen, zusammenfassen und an ein unterstütztes Ziel weiterleiten können. Wir empfehlen, aggregierte Senken zu verwenden, um Ihre Logdaten an einem zentralen Speicherort weiterzuleiten.
Aggregierte Senken
Eine aggregierte Senke ähnelt einer Senke auf Projektebene, da sie Filter und ein Ziel enthält. Der Log Router sendet jedoch die folgenden Logeinträge an eine aggregierte Senke:
- Alle Logeinträge, die aus einem Ordner oder einer Organisation stammen.
- Alle Logeinträge, die aus den untergeordneten Ressourcen des Ordners oder der Organisation stammen.
Wenn Sie beispielsweise eine aggregierte Senke auf Ordnerebene erstellen, sendet der Log Router alle Logeinträge, die aus dem Ordner oder aus untergeordneten Ressourcen des Ordners stammen, an diese Senke.
Wenn in der Ressourcenhierarchie eines Logeintrags aggregierte Senken vorhanden sind, sendet der Log Router den Logeintrag zuerst an diese Senken. Da aggregierte Senken abfangend oder nicht abfangend sein können, sendet der Log Router möglicherweise keinen Logeintrag, der von einer aggregierten Senke weitergeleitet wird, an die Senken auf Projektebene.
- Abfangende aggregierte Senke
Eine abfangende aggregierte Senke verhindert, dass Logeinträge an Senken in untergeordneten Ressourcen weitergeleitet werden, mit Ausnahme der
_Required-Senken in den Ressourcen, aus denen die Logeinträge stammen. Eine abfangende aggregierte Senke kann nützlich sein, um zu verhindern, dass doppelte Kopien von Logeinträgen an mehreren Orten gespeichert werden.Angenommen, Sie müssen Audit-Logs zum Datenzugriff für Prüfzwecke aktivieren. Um die Analyse zu vereinfachen, möchten Sie diese Logs an einem zentralen Ort speichern. Aus Sicherheits- und Kostengründen möchten Sie jedoch auch verhindern, dass diese Logs auf Projektebene gespeichert werden. In diesem Szenario können Sie eine abfangende aggregierte Senke erstellen.
- Nicht abfangende aggregierte Senke
Eine nicht abfangende aggregierte Senke hat keine Auswirkungen darauf, wie Logeinträge an andere Senken weitergeleitet werden. Das heißt, auch wenn ein Logeintrag mit dem Filter einer nicht abfangenden aggregierten Senke übereinstimmt, wird er an andere Senken in der Ressourcenhierarchie des Logeintrags weitergeleitet. Mit einer nicht abfangenden aggregierten Senke können Sie die Sichtbarkeit von Logeinträgen in den Ressourcen beibehalten, in denen sie generiert wurden.
Sie können beispielsweise eine nicht abfangende aggregierte Senke erstellen, die alle Logeinträge, die aus den in einer Organisation enthaltenen Ordnern generiert wurden, an einen zentralen Log-Bucket weiterleitet. Die Logeinträge werden im zentralen Log-Bucket gespeichert. Da die Senke jedoch nicht abfangend ist, sendet der Log Router Logeinträge auch an die Logsenken in der Ressource, in der sie generiert wurden.
Routing-Beispiele
In diesem Abschnitt wird veranschaulicht, wie ein Logeintrag, der in einem Projekt stammt, durch die Senken in seiner Ressourcenhierarchie fließen kann.
Beispiel: Keine aggregierten Senken vorhanden
Wenn in der Ressourcenhierarchie des Logeintrags keine aggregierten Senken vorhanden sind, wird der Logeintrag an die Logsenken in dem Projekt gesendet, aus dem er stammt. Eine Senke auf Projektebene leitet den Logeintrag an das Ziel der Senke weiter, wenn der Logeintrag mit dem Einschlussfilter der Senke übereinstimmt, aber nicht mit einem der Ausschlussfilter der Senke.
Beispiel: Eine nicht abfangende aggregierte Senke ist vorhanden
Angenommen, in der Ressourcenhierarchie für einen Logeintrag ist eine nicht abfangende aggregierte Senke vorhanden. Nachdem der Log Router den Logeintrag an die nicht abfangende aggregierte Senke gesendet hat, geschieht Folgendes:
Die nicht abfangende aggregierte Senke leitet den Logeintrag an das Ziel der Senke weiter, wenn der Logeintrag mit dem Einschlussfilter übereinstimmt, aber nicht mit einem Ausschlussfilter.
Der Log Router sendet den Logeintrag an die Logsenken in dem Projekt, aus dem der Logeintrag stammt.
Eine Senke auf Projektebene leitet den Logeintrag an das Ziel der Senke weiter, wenn der Logeintrag mit dem Einschlussfilter der Senke übereinstimmt, aber nicht mit einem der Ausschlussfilter der Senke.
Beispiel: Eine abfangende aggregierte Senke ist vorhanden
Angenommen, in der Ressourcenhierarchie für einen Logeintrag ist eine abfangende aggregierte Senke vorhanden. Nachdem der Log Router den Logeintrag an die abfangende aggregierte Senke gesendet hat, geschieht eines der folgenden Dinge:
Der Logeintrag stimmt mit dem Einschlussfilter überein, aber nicht mit einem Ausschlussfilter:
- Der Logeintrag wird an das Ziel der abfangenden aggregierten Senke weitergeleitet.
- Der Logeintrag wird an die
_Required-Senke in dem Projekt gesendet, aus dem der Logeintrag stammt.
Der Logeintrag stimmt nicht mit dem Einschlussfilter überein oder stimmt mit mindestens einem Ausschlussfilter überein:
- Der Logeintrag wird nicht von der abfangenden aggregierten Senke weitergeleitet.
Der Log Router sendet den Logeintrag an die Logsenken in dem Projekt, aus dem der Logeintrag stammt.
Eine Senke auf Projektebene leitet den Logeintrag an das Ziel der Senke weiter, wenn der Logeintrag mit dem Einschlussfilter der Senke übereinstimmt, aber nicht mit einem der Ausschlussfilter der Senke.
Unterstützte Ziele für aggregierte Senken
In diesem Abschnitt sind die Ziele aufgeführt, die für aggregierte Senken unterstützt werden.
Abfangende Senken
Das Ziel einer abfangenden aggregierten Senke muss ein Google Cloud Projekt sein.
Die Logsenken im Zielprojekt leiten die Logeinträge an ihre Ziele weiter. Alle Ziele außer Projekten werden unterstützt. Die Logsenken im Zielprojekt können Logeinträge beispielsweise an einen Log-Bucket weiterleiten.
Nicht abfangende Senken
Das Ziel einer nicht abfangenden aggregierten Senke kann eines der folgenden sein:
Google CloudDas Ziel einer Senke kann sich in einer anderen Ressource als die Senke befinden. Sie können beispielsweise eine Logsenke verwenden, um Logeinträge aus einem Projekt an einen Log-Bucket weiterzuleiten, der in einem anderen Projekt gespeichert ist.
Die folgenden Ziele werden unterstützt:
- Google Cloud Projekt
Wählen Sie dieses Ziel aus, wenn die Logsenken im Zielprojekt Ihre Logeinträge weiterleiten sollen oder wenn Sie eine abfangende aggregierte Senke erstellt haben. Die Logsenken in dem Projekt, das das Ziel der Senke ist, können die Logeinträge an jedes unterstützte Ziel außer einem Projekt weiterleiten.
- Log-Bucket
Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten in Ressourcen speichern möchten, die von Cloud Logging verwaltet werden. In Log-Buckets gespeicherte Logdaten können mit Diensten wie dem Log-Explorer und Observability Analytics angezeigt und analysiert werden.
Wenn Sie Ihre Logdaten mit anderen Geschäftsdaten verknüpfen möchten, können Sie Ihre Logdaten in einem Log-Bucket speichern und ein verknüpftes BigQuery-Dataset erstellen. Ein verknüpftes Dataset ist ein schreibgeschütztes Dataset, das wie jedes andere BigQuery-Dataset abgefragt werden kann.
- BigQuery-Dataset
- Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten mit anderen Geschäftsdaten verknüpfen möchten. Das von Ihnen angegebene Dataset muss schreibgeschützt sein. Legen Sie kein verknüpftes BigQuery-Dataset als Ziel einer Senke fest. Verknüpfte Datasets sind schreibgeschützt.
- Cloud Storage-Bucket
- Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten langfristig speichern möchten. Der Cloud Storage-Bucket kann sich im selben Projekt befinden, aus dem die Logeinträge stammen, oder in einem anderen Projekt. Logeinträge werden als JSON-Dateien gespeichert.
- Pub/Sub-Thema
- Wählen Sie dieses Ziel aus, wenn Sie Ihre Logdaten aus Google Cloud exportieren und dann Drittanbieterintegrationen wie Splunk oder Datadog verwenden möchten. Logeinträge werden in JSON formatiert und dann an ein Pub/Sub-Thema weitergeleitet.
Best Practices
Wir empfehlen, dass das Ziel einer aggregierten Senke ein Google Cloud Projekt ist.
Bei diesem Ziel leiten die Logsenken im Ziel Google Cloud projekt
leiten die Logeinträge weiter.
Die _Required-Senke leitet nur Logeinträge weiter, die mit ihrem Filter übereinstimmen und aus der Ressource stammen, in der die Senke definiert ist. Wenn Sie zusätzliche Kopien von Logeinträgen speichern möchten, die mit dem Filter der _Required-Senke übereinstimmen, müssen Sie eine benutzerdefinierte Logsenke erstellen oder den Filter der _Default-Logsenke ändern.
Wenn Sie eine abfangende Senke erstellen, empfehlen wir Folgendes:
Überlegen Sie, ob untergeordnete Ressourcen eine unabhängige Steuerung der Weiterleitung ihrer Logeinträge benötigen. Wenn eine untergeordnete Ressource eine unabhängige Steuerung bestimmter Logeinträge benötigt, prüfen Sie, ob Ihre abfangende Senke diese Logeinträge nicht weiterleitet.
Fügen Sie der Beschreibung einer abfangenden Senke Kontaktdaten hinzu. Dies kann hilfreich sein, wenn sich die Personen, die die abfangende Senke verwalten, von den Personen unterscheiden, die die Projekte verwalten, deren Logeinträge abgefangen werden.
Testen Sie die Senkenkonfiguration, indem Sie zuerst eine nicht abfangende aggregierte Senke erstellen, um zu prüfen, ob die richtigen Logeinträge weitergeleitet werden.
Abfangende aggregierte Senken und logbasierte Messwerte
Logbasierte Messwerte sind Cloud Monitoring-Messwerte , die aus dem Inhalt von Logeinträgen abgeleitet werden. Die Art und Weise, wie ein Logeintrag weitergeleitet wird, bestimmt, zu welchen logbasierten Messwerten dieser Logeintrag beitragen kann. Da eine abfangende aggregierte Senke die Weiterleitung von Logeinträgen beeinflusst, kann die Erstellung dieser Art von Senke zu Änderungen der Werte vorhandener logbasierter Messwerte führen.
Weitere Informationen finden Sie unter Auswirkungen der Weiterleitung von Logeinträgen auf logbasierte Messwerte.
Aggregierte Senken und VPC Service Controls
Die folgenden Einschränkungen gelten bei der Verwendung von aggregierten Senken und VPC Service Controls:
Aggregierte Senken können auf Daten von Projekten innerhalb eines Dienstperimeters zugreifen. Wenn Sie verhindern möchten, dass aggregierte Senken auf Daten innerhalb eines Perimeters zugreifen, empfehlen wir, IAM zum Verwalten von Logging-Berechtigungen zu verwenden.
VPC Service Controls unterstützt das Hinzufügen von Ordner- oder Organisationsressourcen zu Dienstperimetern nicht. Daher können Sie VPC Service Controls nicht zum Schutz von Logs auf Ordner- und Organisationsebene verwenden, einschließlich aggregierter Logs. Zum Verwalten von Logging-Berechtigungen auf Ordner- oder Organisationsebene empfehlen wir IAM.
Wenn Sie Logs mithilfe einer Senke auf Ordner- oder Organisationsebene an eine Ressource weiterleiten, die durch einen Dienstperimeter geschützt wird, müssen Sie dem Dienstperimeter eine Regel für eingehenden Traffic hinzufügen. Die Regel für eingehenden Traffic muss den Zugriff auf die Ressource über das Dienstkonto zulassen, das von der aggregierten Senke verwendet wird. Weitere Informationen finden Sie auf den folgenden Seiten:
Wenn Sie eine Richtlinie für eingehenden oder ausgehenden Traffic für einen Dienstperimeter angeben, können Sie
ANY_SERVICE_ACCOUNTundANY_USER_ACCOUNTnicht als Identitätstyp verwenden, wenn Sie eine Logsenke verwenden, um Logs an Cloud Storage-Ressourcen weiterzuleiten. Sie können jedochANY_IDENTITYals Identitätstyp verwenden.
Nächste Schritte
Informationen zum Erstellen einer aggregierten Senke finden Sie unter Logs auf Organisationsebene und Ordnerebene sortieren und an unterstützte Ziele weiterleiten
Eine Anleitung finden Sie unter Logs Ihrer Organisation zusammenfassen und speichern.
Informationen zum Verwalten vorhandener Senken finden Sie unter Logs an unterstützte Ziele weiterleiten: Senken verwalten.
Informationen zum Anzeigen von Logs in ihren Zielen sowie dazu, wie die Logs formatiert und organisiert sind, finden Sie unter Logs in Senkenzielen ansehen.