更新函数的 Lambda Insights 扩展程序版本 - Amazon CloudWatch

更新函数的 Lambda Insights 扩展程序版本

作为最佳实践,建议您将 Lambda Insights 扩展程序更新到最新版本。本页中的主题说明如何操作。

注意

本页说明如何更新已使用 Lambda Insights 的函数所使用的扩展程序版本。有关如何开始使用 Lambda Insights 的更多信息,请参阅 开始使用 Lambda Insights

使用 Lambda 控制台更新 Lambda Insights 扩展程序版本

按照以下步骤,使用 Lambda 控制台更新 Lambda Insights 扩展程序版本。

使用 Lambda 控制台更新
  1. 通过 https://console.aws.amazon.com/lambda/ 打开 AWS Lambda 控制台。

  2. 选择函数的名称。

  3. 部分中,选择编辑

  4. 在层列表中,搜索 LambdaInsightsExtension,然后将层版本更改为 Lambda Insights 扩展程序的可用版本 中列出的最新版本。

  5. 选择保存

使用 AWS CLI 更新 Lambda Insights 扩展程序版本

要使用 AWS CLI 更新 Lambda Insights 扩展程序版本,请输入以下命令。将 layers 参数的 ARN 值替换为与您的区域和您要使用的扩展程序版本匹配的 ARN。有关 Lambda Insights 扩展程序层最新版本的信息,请参阅 Lambda Insights 扩展程序的可用版本

aws lambda update-function-configuration \ --function-name function-name \ --layers "arn:aws:lambda:us-west-1:111122223333:layer:LambdaInsightsExtension:53"

使用 AWS SAM CLI 更新一个或多个函数的 Lambda Insights 扩展程序

要更新所有 Lambda 函数的 Lambda Insights 扩展程序版本,请使用 Lambda Insights 层的 ARN 更新 AWS Serverless Application Model(SAM)模板 Globals 部分中的 Layers 属性。有关 Lambda Insights 扩展程序层最新版本的信息,请参阅 Lambda Insights 扩展程序的可用版本

以下内容更新所有 Lambda 函数。

Globals: Function: Layers: - !Sub "arn:aws:lambda:${AWS::Region}:111122223333:layer:LambdaInsightsExtension:53"

以下内容仅更新一个函数。

Resources: MyFunction: Type: AWS::Serverless::Function Properties: Layers: - !Sub "arn:aws:lambda:${AWS::Region}:111122223333:layer:LambdaInsightsExtension:53"

使用 AWS CloudFormation 更新一个或多个函数的 Lambda Insights 扩展程序

要使用 AWS CloudFormation 更新 Lambda Insights 扩展程序版本,请更新函数 AWS CloudFormation 资源内 Layers 属性中的扩展程序层,如以下示例所示。有关 Lambda Insights 扩展程序层最新版本的信息,请参阅 Lambda Insights 扩展程序的可用版本

Resources: MyFunction: Type: AWS::Lambda::Function Properties: Layers: - !Sub "arn:aws:lambda:${AWS::Region}:111122223333:layer:LambdaInsightsExtension:53"

使用 AWS CDK 更新一个或多个函数的 Lambda Insights 扩展程序

通过将 layerArn 参数的 ARN 值替换为与您的区域和您要使用的扩展程序版本匹配的 ARN,您可以更新 Lambda 函数的扩展程序版本。有关 Lambda Insights 扩展程序层最新版本的信息,请参阅 Lambda Insights 扩展程序的可用版本

import lambda = require('@aws-cdk/aws-lambda'); const layerArn = 'arn:aws:lambda:us-west-1:111122223333:layer:LambdaInsightsExtension:53'; const layer = lambda.LayerVersion.fromLayerVersionArn(this, 'LayerFromArn', layerArn);

使用无服务器框架更新一个或多个函数的 Lambda Insights 扩展程序

按照以下步骤使用无服务器框架更新现有 Lambda 函数的 Lambda Insights 扩展程序版本。有关无服务器框架的更多信息,请参阅无服务器框架文档

此方法使用无服务器的 Lambda Insights 插件。有关更多信息,请参阅 serverless-plugin-lambda-insights

如果尚未安装最新版本的无服务器命令行界面,则必须先安装或升级到此版本。有关更多信息,请参阅 Setting Up Serverless Framework With AWS

使用 Lambda 控制台更新
  1. 更新 Lambda Insights。如果您尚未执行此操作,则请在文件末尾添加 custom 部分,并在 lambdaInsightsVersion 属性中指定 Lambda Insights 版本。

    custom: lambdaInsights: lambdaInsightsVersion: 53 #specify the Layer Version
  2. 输入以下命令重新部署无服务器服务。

    serverless deploy

对 Lambda 容器映像部署更新 Lambda Insights 扩展程序版本

要更新 Lambda 容器映像的 Lambda Insights,请按照 对 Lambda 容器映像部署启用 Lambda Insights 中的步骤使用最新版本的 Lambda Insights 重建映像。然后,使用 AWS CLI 更新函数代码并提供容器映像 URI 作为 --image-uri 参数的值。