Schritt 4: Simulieren eines Problems und Wiederholung der Ereignisse zur Wiederherstellung - Amazon Simple Notification Service

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.

Schritt 4: Simulieren eines Problems und Wiederholung der Ereignisse zur Wiederherstellung

Schritt 1: Aktivieren Sie das simulierte Problem und senden Sie eine zweite API-Anfrage

  1. Melden Sie sich an der AWS Lambda -Konsole an.

  2. Wählen Sie im Navigationsbereich Functions (Funktionen) aus.

  3. Suchen Sie nach serverlessrepo-fork-exampleund wählen Sie CheckoutFunction aus.

  4. Auf dem fork-example-ecommerce- my-app - CheckoutFunction -ABCDEF... Setzen Sie auf der Seite im Abschnitt Umgebungsvariablen die Variable BUG_ENABLED auf true und wählen Sie dann Speichern aus.

  5. Kopieren Sie den folgenden JSON-Code in eine Datei mit dem Namen test_event_2.json.

    { "id": 9917, "date": "2019-03-26T21:11:10-08:00", "status": "confirmed", "customer": { "id": 56999, "quantity": 1, "price": 75.00, "subtotal": 75.00 }] }
  6. Um eine HTTPS-Anfrage an Ihren API-Endpunkt zu senden, übergeben Sie die Nutzlast des Beispielereignisses als Eingabe, indem Sie einen curl-Befehl ausführen, zum Beispiel:

    curl -d "$(cat test_event_2.json)" https://abcdefghij.execute-api.us-east-2.amazonaws.com/Prod/checkout

    Die API gibt die folgende leere Antwort unter Angabe einer erfolgreichen Ausführung zurück:

    { }

Schritt 2: Überprüfen Sie die simulierte Datenbeschädigung

  1. Melden Sie sich bei der Amazon DynamoDB-Konsole an.

  2. Wählen Sie im Navigationsbereich Tables (Tabellen) aus.

  3. Suchen Sie nach serverlessrepo-fork-example und wählen Sie CheckoutTable aus.

  4. Wählen Sie auf der Tabellendetailseite Items (Elemente) und dann das erstellte Element aus.

    Die gespeicherten Attribute werden angezeigt, einige markiert als CORRUPTED (BESCHÄDIGT!)

Schritt 3: Deaktivieren Sie das simulierte Problem

  1. Melden Sie sich an der AWS Lambda -Konsole an.

  2. Wählen Sie im Navigationsbereich Functions (Funktionen) aus.

  3. Suchen Sie nach serverlessrepo-fork-exampleund wählen Sie CheckoutFunction aus.

  4. Auf dem fork-example-ecommerce- my-app - CheckoutFunction -ABCDEF... Setzen Sie auf der Seite im Abschnitt Umgebungsvariablen die Variable BUG_ENABLED auf false und wählen Sie dann Speichern aus.

Schritt 4: Aktivieren Sie die Wiedergabefunktion, um das Problem zu beheben

  1. Wählen Sie in der AWS Lambda Konsole im Navigationsbereich die Option Funktionen aus.

  2. Suchen Sie nach serverlessrepo-fork-example und wählen Sie ReplayFunction aus.

  3. Erweitern Sie den Abschnitt Designer (Designer), wählen Sie das Feld SQS (SQS) und dann im Abschnitt SQS (SQS) Enabled (Aktiviert) aus.

    Anmerkung

    Es dauert ca. 1 Minute, bis der Amazon SQS-Ereignisquellenauslöser aktiviert wird.

  4. Wählen Sie Save (Speichern) aus.

  5. Zur Anzeige der wiederhergestellten Attribute kehren Sie zur Amazon–DynamoDB-Konsole zurück.

  6. Um die Wiedergabe zu deaktivieren, kehren Sie zur AWS Lambda Konsole zurück und deaktivieren Sie den Amazon SQS SQS-Ereignisquellenauslöser für. ReplayFunction