ステップ 4: 復旧のために問題をシミュレートしてイベントを再生するには - Amazon Simple Notification Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ステップ 4: 復旧のために問題をシミュレートしてイベントを再生するには

ステップ 1: シミュレートした問題を有効にして別の API リクエストを送信するには

  1. AWS Lambda コンソール にサインインします。

  2. ナビゲーションパネルで [関数] を選択します。

  3. serverlessrepo-fork-example を検索して CheckoutFunction を選択します。

  4. fork-example-ecommerce-my-app -CheckoutFunction-ABCDEF ... ページの環境変数セクションで、BUG_ENABLED 変数を true に設定し、保存を選択します

  5. 次の 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 }] }
  6. API エンドポイントに HTTPS リクエストを送信するには、curl コマンドを実行してサンプルイベントペイロードを入力として渡します。次に例を示します。

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

    API は、次の空のレスポンスを返し、実行が成功したことを示します。

    { }

ステップ 2: シミュレートしたデータの破損を検証するには

  1. Amazon DynamoDB コンソールにサインインします。

  2. ナビゲーションパネルで、[テーブル] を選択します。

  3. serverlessrepo-fork-example を検索して CheckoutTable を選択します。

  4. テーブルの詳細ページで [項目] を選択し、作成済みの項目を選択します。

    保存済みの属性が表示されます。一部の属性は [CORRUPTED!] とマークされています。

ステップ 3: シミュレートした問題を無効にするには

  1. AWS Lambda コンソール にサインインします。

  2. ナビゲーションパネルで [関数] を選択します。

  3. serverlessrepo-fork-example を検索して CheckoutFunction を選択します。

  4. fork-example-ecommerce-my-app -CheckoutFunction-ABCDEF ... ページの「環境変数」セクションで、BUG_ENABLED 変数を false に設定し、「保存」を選択します。

ステップ 4: 再生を有効にして問題から復旧するには

  1. AWS Lambda コンソールのナビゲーションパネルで、[関数] を選択します。

  2. serverlessrepo-fork-example を検索して ReplayFunction を選択します。

  3. [Designer] セクションを展開して [SQS] タイルを選択し、次に [SQS] セクションで [有効] を選択します。

    注記

    Amazon SQS のイベントソーストリガーが有効になるまで約 1 分かかります。

  4. [保存] を選択します。

  5. 復旧された属性を表示するには、Amazon DynamoDB コンソールに戻ります。

  6. 再生を無効にするには、AWS Lambda コンソールに戻り、Amazon SQS の ReplayFunction イベントソーストリガーを無効にします。