使用无服务器框架对现有 Lambda 函数启用 Lambda Insights - Amazon CloudWatch

使用无服务器框架对现有 Lambda 函数启用 Lambda Insights

按照以下步骤使用无服务器框架对现有 Lambda 函数启用 Lambda Insights。有关无服务器框架的更多信息,请访问 serverless.com

此启用方式是通过面向无服务器的 Lambda Insights 插件实现的。有关更多信息,请参阅 serverless-plugin-lambda-insights

如果尚未安装最新版本的无服务器命令行界面,则必须先安装或升级到此版本。有关更多信息,请参阅开始使用无服务器框架开源和 AWS

使用无服务器框架对 Lambda 函数上启用 Lambda Insights
  1. 在无服务器目录中运行以下命令,为 Lambda Insights 安装无服务器插件:

    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 deploy

    此操作会重新部署所有函数,并为您指定的函数启用 Lambda Insights。它通过添加 Lambda Insights 层以及使用 arn:aws:iam::aws:policy/CloudWatchLambdaInsightsExecutionRolePolicy IAM 策略附加必要的权限来启用 Lambda Insights。