使用 AWS CDK 对现有 Lambda 函数启用 Lambda Insights - Amazon CloudWatch

使用 AWS CDK 对现有 Lambda 函数启用 Lambda Insights

按照以下步骤操作,使用 AWS CDK 对现有 Lambda 函数启用 Lambda Insights。若要使用这些步骤,您必须已经使用 AWS CDK 来管理您的资源。

本部分的命令采用 TypeScript 语言。

首先,更新函数权限。

executionRole.addManagedPolicy( ManagedPolicy.fromAwsManagedPolicyName('CloudWatchLambdaInsightsExecutionRolePolicy') );

接下来,在 Lambda 函数上安装扩展程序。将 layerArn 参数的 ARN 值替换为与您的区域和您要使用的扩展程序版本匹配的 ARN。有关更多信息,请参阅 Lambda Insights 扩展程序的可用版本

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

如有必要,请为 CloudWatch Logs 启用 Virtual Private Cloud (VPC) 端点。仅在函数运行于不具有 Internet 访问权限的私有子网中以及您尚未配置 CloudWatch Logs VPC 终端节点的情况下,才需要执行此步骤。

const cloudWatchLogsEndpoint = vpc.addInterfaceEndpoint('cwl-gateway', { service: InterfaceVpcEndpointAwsService.CLOUDWATCH_LOGS, }); cloudWatchLogsEndpoint.connections.allowDefaultPortFromAnyIpv4();