翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ステップ 4: 復旧のために問題をシミュレートしてイベントを再生するには
ステップ 1: シミュレートした問題を有効にして別の API リクエストを送信するには
-
AWS Lambda コンソール
にサインインします。 -
ナビゲーションパネルで [関数] を選択します。
-
serverlessrepo-fork-example
を検索してCheckoutFunction
を選択します。 -
fork-example-ecommerce-
my-app
-CheckoutFunction-ABCDEF
... ページの環境変数セクションで、BUG_ENABLED 変数を true に設定し、保存を選択します。 -
次の JSON を
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 }] }
-
API エンドポイントに HTTPS リクエストを送信するには、
curl
コマンドを実行してサンプルイベントペイロードを入力として渡します。次に例を示します。curl -d "$(cat test_event_2.json)" https://abcdefghij.execute-api.us-east-2.amazonaws.com/Prod/checkout
API は、次の空のレスポンスを返し、実行が成功したことを示します。
{ }
ステップ 2: シミュレートしたデータの破損を検証するには
-
Amazon DynamoDB コンソール
にサインインします。 -
ナビゲーションパネルで、[テーブル] を選択します。
-
serverlessrepo-fork-example
を検索してCheckoutTable
を選択します。 -
テーブルの詳細ページで [項目] を選択し、作成済みの項目を選択します。
保存済みの属性が表示されます。一部の属性は [CORRUPTED!] とマークされています。
ステップ 3: シミュレートした問題を無効にするには
-
AWS Lambda コンソール
にサインインします。 -
ナビゲーションパネルで [関数] を選択します。
-
serverlessrepo-fork-example
を検索してCheckoutFunction
を選択します。 -
fork-example-ecommerce-
my-app
-CheckoutFunction-ABCDEF
... ページの「環境変数」セクションで、BUG_ENABLED 変数を false に設定し、「保存」を選択します。
ステップ 4: 再生を有効にして問題から復旧するには
-
AWS Lambda コンソールのナビゲーションパネルで、[関数] を選択します。
-
serverlessrepo-fork-example
を検索してReplayFunction
を選択します。 -
[Designer] セクションを展開して [SQS] タイルを選択し、次に [SQS] セクションで [有効] を選択します。
注記
Amazon SQS のイベントソーストリガーが有効になるまで約 1 分かかります。
-
[保存] を選択します。
-
復旧された属性を表示するには、Amazon DynamoDB コンソールに戻ります。
-
再生を無効にするには、AWS Lambda コンソールに戻り、Amazon SQS の
ReplayFunction
イベントソーストリガーを無効にします。