Serverless Framework を使用して、既存の Lambda 関数で Lambda Insights を有効にする - Amazon CloudWatch

Serverless Framework を使用して、既存の Lambda 関数で Lambda Insights を有効にする

Serverless Framework を使用して、既存の Lambda 関数で Lambda Insights を有効にするには、次の手順に従います。Serverless Framework の詳細については、serverless.com を参照してください。

これは、Serverless の Lambda Insights プラグインから行えます。詳細については、「serverless-plugin-lambda-insights」を参照してください。

最新バージョンの Serverless コマンドラインインターフェースをまだ使用していない場合は、まずインストールまたはアップグレードする必要があります。詳細については、Serverless Framework Open Source & AWS の使用開始を参照してください。

Serverless Framework を使用して、Lambda 関数で Lambda Insights を有効化するには
  1. Serverless のディレクトリで次のコマンドを実行し、Lambda Insights 用の Serverless プラグインをインストールします。

    npm install --save-dev serverless-plugin-lambda-insights
  2. serverless.ymlファイルで、図のように plugins セクション内にプラグインを追加します。

    provider: name: aws plugins: - serverless-plugin-lambda-insights
  3. Lambda Insights を有効にします。

    • 次のプロパティを serverless.yml ファイルに追加することで、関数ごとに個別に Lambda Insights を有効化できます。

      functions: myLambdaFunction: handler: src/app/index.handler lambdaInsights: true #enables Lambda Insights for this function
    • 次のカスタムセクションを追加すると、serverless.yml ファイル内にあるすべての関数に対して Lambda Insights を有効化できます。

      custom: lambdaInsights: defaultLambdaInsights: true #enables Lambda Insights for all functions
  4. 次のコマンドを入力して、Serverless サービスを再デプロイします。

    serverless deploy

    これにより、すべての関数が再デプロイされ、指定した関数に対し Lambda Insights が有効になります。ここでは、Lambda Insights レイヤーを追加し、arn:aws:iam::aws:policy/CloudWatchLambdaInsightsExecutionRolePolicy IAM ポリシーを使用して必要なアクセス許可をアタッチすることで、Lambda Insights を有効にしています。