

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

# ステップ 4: デプロイの結果を表示する
<a name="tutorial-lambda-sam-deploy-view-results"></a>

このステップでは、デプロイの結果を表示します。デプロイが成功すると、更新された Lambda 関数が本稼働トラフィックを受信することを確認できます。デプロイが失敗した場合、CloudWatch Logs を使用して、デプロイのライフサイクルフックの間に実行される Lambda 関数の検証テストの出力を表示できます。

**Topics**
+ [デプロイされた関数をテストする](#tutorial-lambda-sam-deploy-test-deployed-function)
+ [CloudWatch Logs でのフックイベントを表示します。](#tutorial-lambda-view-hook-events)

## デプロイされた関数をテストする
<a name="tutorial-lambda-sam-deploy-test-deployed-function"></a>

 **sam deploy** のコマンドは、`my-date-time-app-myDateTimeFunction` のLambda 関数を更新します。関数のバージョンが 2 に更新され、`live` エイリアスに追加されます。

**Lambda コンソール中の更新を見るには**

1. [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/) で AWS Lambda コンソールを開きます。

1.  ナビゲーションペインで、`my-date-time-app-myDateTimeFunction` 関数を選択します。コンソールでは、名前に識別子が含まれているため、`my-date-time-app-myDateTimeFunction-123456ABCDEF` のようになります。

1.  [**Qualifiers (修飾子)**]、[**エイリアス**] の順に選択します。デプロイが完了した後(約 10 分)、`live` エイリアスに [**バージョン: 2**] と表示されます。  
![\[CodeDeploy コンソールのエイリアスセクション。\]](http://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/images/lambda-tutorial-function-version.png)

1.  [**関数コード**] で、関数のソースコードを表示します。変更が表示されます。

1.  (オプション)[ステップ 2: Lambda 関数を更新します](tutorial-lambda-sam-update-function.md) のテスト手順を使用して、更新された関数をテストできます。次のペイロードを使用して新しいテストイベントを作成し、結果に現在の時、分、秒が含まれていることを確認します。

   ```
   {
       "option": "time"
     }
   ```

    を使用して更新された関数を AWS CLI テストするには、次のコマンドを実行し、 `out.txt`を開いて、結果に現在の時間、分、秒が含まれていることを確認します。

   ```
   aws lambda invoke --function your-function-arn --payload "{\"option\": \"time\"}" out.txt 
   ```
**注記**  
 デプロイが完了する前に を使用して関数を AWS CLI テストすると、予期しない結果が表示されることがあります。これは、CodeDeploy がトラフィックの 10% を毎分更新バージョンに段階的に移行するためです。デプロイ中、一部のトラフィックは引き続き元のバージョンを指すため、`aws lambda invoke` は元のバージョンを使用する場合があります。10 分後には、デプロイが完了し、すべてのトラフィックが関数の新しいバージョンを指し示します。

## CloudWatch Logs でのフックイベントを表示します。
<a name="tutorial-lambda-view-hook-events"></a>

 `BeforeAllowTraffic` のフック中に、CodeDeploy は `CodeDeployHook_beforeAllowTraffic` の Lambda 関数を実行します。`AfterAllowTraffic` のフック中に、CodeDeploy は `CodeDeployHook_afterAllowTraffic` の Lambda 関数を実行します。各関数は、新しい `time` パラメータを使用して関数の更新バージョンを呼び出す検証テストを実行します。Lambda 関数の更新が成功した場合、`time` のオプションによるエラーは発生せず、検証は成功します。関数が更新されなかった場合、認識されないパラメータによってエラーが発生し、検証が失敗します。これらの検証テストはデモンストレーションのみを目的としています。デプロイを検証するには独自のテストを記述します。CloudWatch Logs コンソールを使用して、検証テストを表示できます。

**CodeDeploy フックイベントを表示するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1.  ナビゲーションペインで、[**Logs (ログ)**] を選択します。

1.  ロググループのリストから、[**/aws/lambda/CodeDeployHook\$1beforeAllowTraffic**] または [**/aws/lambda/CodeDeployHook\$1afterAllowTraffic**] を選択します。

1.  ログストリームを選択します。1 つのみ表示されます。

1.  イベントを展開して詳細を表示します。  
![\[CodeDeployHook ロググループのログストリーム。\]](http://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/images/lambda-tutorial-cloudwatch.png)