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: So simulieren Sie ein Problem und wiederholen Ereignisse zur Wiederherstellung
Schritt 1: So aktivieren Sie das simulierte Problem und senden eine zweite API-Anforderung
-
Melden Sie sich an der AWS Lambda-Konsole
an. -
Wählen Sie im Navigationsbereich Functions (Funktionen) aus.
-
Suchen Sie nach
serverlessrepo-fork-example
und wählen SieCheckoutFunction
aus. -
Setzen Sie auf der Seite fork-example-ecommerce-
my-app
-CheckoutFunction-ABCDEF
... im Abschnitt Umgebungsvariablen die Variable BUG_ENABLED auf true und wählen Sie dann Speichern aus. -
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, "name": "Marcia Oliveira", "email": "marcia.oliveira@example.com" }, "payment": { "id": 3311, "amount": 75.00, "currency": "usd", "method": "credit", "card-network": "mastercard", "card-number": "1234 5678 9012 3456", "card-expiry": "12/2025", "card-owner": "Marcia Oliveira", "card-cvv": "321" }, "shipping": { "id": 9900, "time": 20, "unit": "days", "method": "plane" }, "items": [{ "id": 9993, "product": 3120, "name": "Hockey Stick", "quantity": 1, "price": 75.00, "subtotal": 75.00 }] }
-
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: So verifizieren Sie eine simulierte Datenbeschädigung
-
Melden Sie sich bei der Amazon DynamoDB-Konsole
an. -
Wählen Sie im Navigationsbereich Tables (Tabellen) aus.
-
Suchen Sie nach
serverlessrepo-fork-example
und wählen SieCheckoutTable
aus. -
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: So deaktivieren Sie das simulierte Problem
-
Melden Sie sich an der AWS Lambda-Konsole
an. -
Wählen Sie im Navigationsbereich Functions (Funktionen) aus.
-
Suchen Sie nach
serverlessrepo-fork-example
und wählen SieCheckoutFunction
aus. -
Legen Sie auf der Seite fork-example-ecommerce-
my-app
-CheckoutFunction-ABCDEF
... im Abschnitt Umgebungsvariablen die Variable BUG_ENABLED auf false fest und wählen Sie dann Speichern aus.
Schritt 4: So aktivieren Sie die Wiederholung zur Wiederherstellung nach dem Problem
-
Wählen Sie in der AWS Lambda-Konsole im Navigationsbereich Functions (Funktionen).
-
Suchen Sie nach
serverlessrepo-fork-example
und wählen SieReplayFunction
aus. -
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.
-
Wählen Sie Speichern.
-
Zur Anzeige der wiederhergestellten Attribute kehren Sie zur Amazon–DynamoDB-Konsole zurück.
-
Kehren Sie zur Deaktivierung der Wiederholung zur AWS Lambda-Konsole zurück und deaktivieren Sie den Amazon SQS-Ereignisquellenauslöser für
ReplayFunction
.