既存の Lambda 関数で Lambda Insights を有効にするために AWS CDK を使用する - Amazon CloudWatch

既存の Lambda 関数で Lambda Insights を有効にするために AWS CDK を使用する

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) エンドポイントを使用することもできます。このステップは、インターネットにアクセスできないプライベートサブネットで実行されている関数、および CloudWatch Logs VPC エンドポイントをまだ設定していない場合にのみ必要です。

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