

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.

# Tutorial: Amazon S3 S3-Operationen auf Objektebene protokollieren mit EventBridge
<a name="eb-log-s3-data-events"></a>

Sie können die API-Operationen auf Objektebene der [Amazon-S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)-Buckets protokollieren. Bevor Amazon diese [Ereignisse](eb-events.md) zuordnen EventBridge kann, [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)müssen Sie einen Trail einrichten und konfigurieren, um diese Ereignisse zu empfangen.

In diesem Tutorial erstellen Sie einen CloudTrail Trail, eine [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)Funktion und anschließend eine [Regel](eb-rules.md) in der EventBridge Konsole, die diese Funktion als Reaktion auf ein S3-Datenereignis aufruft.

**Topics**
+ [Schritt 1: Konfiguriere deinen Trail AWS CloudTrail](#eb-configure-trail)
+ [Schritt 2: Erstellen Sie eine AWS Lambda Funktion](#eb-log-s3-create-lambda-function)
+ [Schritt 3: Erstellen einer Regel](#eb-log-s3-create-rule)
+ [Schritt 4: Testen der Regel](#eb-log-s3-test-rule)
+ [Schritt 5: Bestätigen des Erfolgs](#success)
+ [Schritt 6: Bereinigen Ihrer Ressourcen](#cleanup)

## Schritt 1: Konfiguriere deinen Trail AWS CloudTrail
<a name="eb-configure-trail"></a>

Um Datenereignisse für einen S3-Bucket in AWS CloudTrail und zu protokollieren EventBridge, erstellen Sie zunächst einen Trail. Ein *Trail* erfasst API-Aufrufe und zugehörige Ereignisse für Ihr Konto und stellt die Protokolldateien anschließend in einem S3 Bucket bereit, den Sie angegeben haben. Sie können einen vorhandenen Trail aktualisieren oder einen Trail erstellen.

Weitere Informationen finden Sie unter [Datenereignisse](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-and-data-events-with-cloudtrail.html#logging-data-events) im *Benutzerhandbuch für AWS CloudTrail *. 

**So erstellen Sie einen Trail**

1. Öffnen Sie die CloudTrail Konsole unter [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. Wählen Sie **Trails**, **Create trail (Trail erstellen)**.

1. Geben Sie unter **Trail name** einen Namen für den Trail ein.

1. Wählen Sie für **Speicherort** die Option **Neuen S3-Bucket erstellen** aus.

1. Geben Sie einen **AWS KMS -Alias** für den KMS-Schlüssel ein.

1. Wählen Sie **Weiter** aus.

1. Wählen Sie für **Ereignistyp** die Option **Datenereignisse** aus.

1. Führen Sie für **Datenereignisse** eine der folgenden Aktionen aus:
   + Um Datenereignisse für alle Amazon S3-Objekte in einem Bucket zu protokollieren, geben Sie einen S3-Bucket und ein leeres Präfix an. Wenn ein Ereignis auf einem Objekt in diesem -Bucket eintritt, wird das Ereignis vom Trail verarbeitet und protokolliert.
   + Geben Sie einen S3-Bucket und das Objektpräfix an, um Datenereignisse für bestimmte Amazon-S3-Objekte in einem Bucket zu protokollieren. Tritt ein Ereignis auf einem Objekt in dem -Bucket auf und das Objekt beginnt mit dem angegebenen Präfix, wird das Ereignis vom Trail verarbeitet und protokolliert.

1. Wählen Sie für jede Ressource aus, ob **Lese**-Ereignisse, **Schreib**-Ereignisse oder beide protokolliert werden sollen.

1. Wählen Sie **Weiter** aus.

1. Wählen Sie **Create Trail (Trail erstellen)** aus.

## Schritt 2: Erstellen Sie eine AWS Lambda Funktion
<a name="eb-log-s3-create-lambda-function"></a>

Erstellen Sie eine Lambda-Funktion, um Datenereignisse für die S3 Buckets zu protokollieren. 

**So erstellen Sie eine Lambda-Funktion**

1. Öffnen Sie die AWS Lambda Konsole unter [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/).

1. Wählen Sie **Funktion erstellen**.

1. Wählen Sie **Von Grund auf neu schreiben** aus.

1. Geben Sie einen Namen und eine Beschreibung für die Lambda-Funktion ein. Geben Sie der Funktion beispielsweise den Namen `LogS3DataEvents`.

1. Behalten Sie die übrigen Optionen als Standardwerte bei und wählen Sie **Funktion erstellen** aus.

1. Doppelklicken Sie auf der Registerkarte **Code** der Funktionsseite auf **index.js**.

1. Ersetzen Sie den vorhandenen Code mit folgendem Code.

   ```
   'use strict';
   
   exports.handler = (event, context, callback) => {
       console.log('LogS3DataEvents');
       console.log('Received event:', JSON.stringify(event, null, 2));
       callback(null, 'Finished');
   };
   ```

1. Wählen Sie **Bereitstellen**.

## Schritt 3: Erstellen einer Regel
<a name="eb-log-s3-create-rule"></a>

Erstellen Sie eine Regel, um die Lambda-Funktion auszuführen, die Sie in Schritt 2 erstellt haben. Diese Regel wird als Antwort auf ein Amazon-S3-Datenereignis ausgeführt.

**So erstellen Sie eine Regel**

1. Öffnen Sie die EventBridge Amazon-Konsole unter [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Wählen Sie im Navigationsbereich **Regeln** aus.

1. Wählen Sie **Regel erstellen** aus.

1. Geben Sie einen Namen und eine Beschreibung für die Regel ein. Nennen Sie die Regel beispielsweise `TestRule`.

1. Wählen Sie für **Event Bus** den Event Bus aus, den Sie dieser Regel zuordnen möchten. Wenn Sie möchten, dass diese Regel mit Ereignissen aus Ihrem eigenen Konto übereinstimmt, wählen Sie **Standard** aus. Wenn ein AWS -Service in Ihrem Konto ein Ereignis ausgibt, wird es stets an den Standard-Event-Bus Ihres Kontos weitergeleitet.

1. Bei **Regeltyp** wählen Sie **Regel mit einem Ereignismuster** aus.

1. Wählen Sie **Weiter** aus.

1. Als **Event source** (Ereignisquelle) wählen Sie **AWS -Services** aus.

1. Gehen Sie bei **Event pattern** (Ereignismuster) wie folgt vor:

   1. Wählen Sie für **Ereignisquelle** die Option **Simple Storage Service (S3)** aus der Dropdown-Liste aus.

   1. Wählen Sie als **Ereignistyp** aus der **Drop-down-Liste die Option API-Aufruf auf Objektebene über CloudTrail** aus.

   1. Wählen Sie **Bestimmte Operation (en)** und wählen Sie dann. **PutObject**

   1. Standardmäßig gilt die Regel für Datenereignisse in allen Buckets in der Region. Damit die Datenereignisse für bestimmte Buckets gelten, wählen Sie **Specify bucket(s) by name (Bucket(s) nach Name angeben)** aus und geben dann einen oder mehrere Buckets ein.

1. Wählen Sie **Weiter** aus.

1. Bei **Zieltypen** wählen Sie **AWS -Service** aus.

1. Wählen Sie für **Ziel auswählen** die Option **Lambda-Funktion** aus der Dropdown-Liste aus.

1. Wählen Sie für **Funktion** die `LogS3DataEvents`-Lambda-Funktion aus, die Sie in Schritt 1 erstellt haben.

1. Wählen Sie **Weiter** aus.

1. Wählen Sie **Weiter** aus.

1. Überprüfen Sie die Details der Regel und wählen Sie dann **Regel erstellen** aus.

## Schritt 4: Testen der Regel
<a name="eb-log-s3-test-rule"></a>

Um die Regel zu testen, fügen Sie ein Objekt in Ihrem S3-Bucket ein. Sie können überprüfen, ob die Lambda-Funktion aufgerufen wurde.

**So zeigen Sie die Protokolle für die Lambda-Funktion an**

1. Öffnen Sie die CloudWatch Konsole unter [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Wählen Sie im Navigationsbereich **Protokolle** aus.

1. Wählen Sie den Namen der Protokollgruppe für Ihre Lambda-Funktion aus (`/aws/lambda/function-name`).

1. Wählen Sie den Namen des Protokoll-Streams aus, um die von der Funktion für die von Ihnen gestartete Instance bereitgestellten Daten anzuzeigen.

Sie können Ihre CloudTrail Logs auch in dem S3-Bucket überprüfen, den Sie für Ihren Trail angegeben haben. Weitere Informationen finden Sie im *AWS CloudTrail Benutzerhandbuch* unter [Abrufen und Anzeigen Ihrer CloudTrail Protokolldateien](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/get-and-view-cloudtrail-log-files.html).

## Schritt 5: Bestätigen des Erfolgs
<a name="success"></a>

Wenn Sie das Lambda-Ereignis in den CloudWatch Protokollen sehen, haben Sie dieses Tutorial erfolgreich abgeschlossen. Wenn das Ereignis nicht in Ihren CloudWatch Protokollen enthalten ist, beginnen Sie mit der Fehlerbehebung, indem Sie überprüfen, ob die Regel erfolgreich erstellt wurde. Wenn die Regel korrekt aussieht, überprüfen Sie, ob der Code Ihrer Lambda-Funktion korrekt ist.

## Schritt 6: Bereinigen Ihrer Ressourcen
<a name="cleanup"></a>

Sie können jetzt die Ressourcen, die Sie für dieses Tutorial erstellt haben, löschen, es sei denn, Sie möchten sie behalten. Indem Sie AWS Ressourcen löschen, die Sie nicht mehr verwenden, verhindern Sie, dass Ihr AWS Konto unnötig belastet wird.

**Um die EventBridge Regel (n) zu löschen**

1. Öffnen Sie die [Seite Regeln](https://console.aws.amazon.com/events/home#/rules) der EventBridge Konsole.

1. Wählen Sie die Regel(n) aus, die Sie erstellt haben.

1. Wählen Sie **Löschen** aus.

1. Wählen Sie **Löschen** aus.

**So löschen Sie die Lambda-Funktion(en)**

1. Öffnen Sie die Seite [Funktionen](https://console.aws.amazon.com/lambda/home#/functions) der Lambda-Konsole.

1. Wählen Sie die Funktion(en) aus, die Sie erstellt haben.

1. Wählen Sie **Aktionen**, **Löschen** aus.

1. Wählen Sie **Löschen** aus.

**Um die CloudTrail Spur (en) zu löschen**

1. Öffnen Sie die [Trails-Seite](https://console.aws.amazon.com/cloudtrail/home#/trails) der CloudTrail Konsole.

1. Wählen Sie den/die Trail(s) aus, den/die Sie erstellt haben.

1. Wählen Sie **Löschen** aus.

1. Wählen Sie **Löschen** aus.