Verhinderung der Rekursion von Protokollen - CloudWatch Amazon-Protokolle

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verhinderung der Rekursion von Protokollen

Bei Abonnementfiltern besteht das Risiko, dass eine unendliche Protokollrekursion entsteht, was zu einem starken Anstieg der Abrechnung für Datenerfassung sowohl in den CloudWatch Protokollen als auch in Ihrem Zielverzeichnis führen kann, wenn dies nicht sogar verhindert wird. Dies kann der Fall sein, wenn ein Abonnementfilter einer Protokollgruppe zugeordnet ist, die aufgrund Ihres Workflows für die Abonnementzustellung Protokollereignisse empfängt. Die in die Protokollgruppe aufgenommenen Protokolle werden an das Ziel übermittelt, wodurch die Protokollgruppe mehr Protokolle aufnimmt, die dann wieder an das Ziel weitergeleitet werden, wodurch eine Rekursionsschleife entsteht.

Stellen Sie sich zum Beispiel einen Abonnementfilter mit dem Ziel Firehose vor, der Protokollereignisse an Amazon S3 übermittelt. Darüber hinaus gibt es auch eine Lambda-Funktion, die neue Ereignisse verarbeitet, die an Amazon S3 übermittelt werden, und einige Protokolle selbst erstellt. Wenn der Abonnementfilter auf die Protokollgruppe der Lambda-Funktion angewendet wird, werden die von der Funktion erzeugten Protokollereignisse an Firehose und Amazon S3 am Ziel weitergeleitet, die dann die Funktion erneut aufrufen, wodurch mehr Protokolle erstellt und an Firehose und Amazon S3 weitergeleitet werden, was zu einem erneuten Aufruf der Funktion führt usw. Dies wird in einer Endlosschleife geschehen, was zu einer unerwarteten Erhöhung der Gebühren für Log-Ingestion, Firehose und Amazon S3 führt.

Wenn die Lambda-Funktion an eine VPC angehängt ist, deren Flow-Logs für CloudWatch Logs aktiviert sind, kann die Log-Gruppe der VPC ebenfalls eine Log-Rekursion auslösen.

Wir empfehlen, dass Sie keine Abonnementfilter auf Protokollgruppen anwenden, die Teil Ihres Workflows für die Abonnementzustellung sind. Verwenden Sie für Abonnementfilter auf Kontoebene den selectionCriteria Parameter in der PutAccountPolicy API, um diese Protokollgruppen von der Richtlinie auszuschließen.

Wenn Sie Protokollgruppen ausschließen, sollten Sie die folgenden AWS Dienste in Betracht ziehen, die Protokolle erstellen und Teil Ihrer Workflows für die Abonnementzustellung sein können:

  • Amazon EC2 mit Fargate

  • Lambda

  • AWS Step Functions

  • Amazon VPC-Flow-Logs, die für CloudWatch Logs aktiviert sind

Anmerkung

Protokollereignisse, die von der Protokollgruppe eines Lambda-Ziels erzeugt wurden, werden für eine Abonnementfilterrichtlinie auf Kontoebene nicht an die Lambda-Funktion zurückgeleitet. In diesem Fall ist es für Kontoabonnementrichtlinien nicht erforderlich, die Verwendung selectionCriteria der Protokollgruppe der Ziel-Lambda-Funktion auszuschließen.