

# 함수에 대한 Lambda Insights 확장 버전 업데이트
<a name="Lambda-Insights-Update-Extension"></a>

Lambda Insights 확장을 최신 버전으로 업데이트하는 것이 좋습니다. 이 페이지의 항목에서는 이를 수행하는 방법을 설명합니다.

**참고**  
이 페이지에서는 이미 Lambda Insights를 사용하고 있는 함수에서 사용 중인 확장 버전을 업데이트하는 방법을 설명합니다. Lambda Insights를 시작하는 방법에 대한 자세한 내용은 [Lambda Insights 시작하기](Lambda-Insights-Getting-Started.md) 섹션을 참조하세요.

## Lambda 콘솔을 사용하여 Lambda Insights 확장 버전 업데이트
<a name="Lambda-Insights-Update-Extension-console"></a>

다음 단계에 따라 Lambda 콘솔을 사용하여 Lambda Insights 확장 버전을 업데이트하세요.

**Lambda 콘솔을 사용하여 업데이트하려면 다음을 수행하세요.**

1. [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/)에서 AWS Lambda 콘솔을 엽니다.

1. 함수의 이름을 선택합니다.

1. **계층** 섹션에서 **편집**을 선택합니다.

1. 계층 목록에서 **LambdaInsightsExtension**을 검색하고 계층 버전을 [사용 가능한 Lambda Insights 익스텐션 버전](Lambda-Insights-extension-versions.md)에 나열된 최신 버전으로 변경합니다.

1. **저장**을 선택합니다.

## AWS CLI를 사용하여 Lambda Insights 확장 버전 업데이트
<a name="Lambda-Insights-Update-Extension-CLI"></a>

AWS CLI를 사용하여 Lambda Insights 확장 버전을 업데이트하려면 다음 명령을 입력하세요. layers 파라미터의 ARN 값을 사용하려는 리전 및 확장 버전과 일치하는 ARN으로 바꿉니다. 최신 릴리스 버전의 Lambda Insights 확장 계층에 대한 자세한 내용은 [사용 가능한 Lambda Insights 익스텐션 버전](Lambda-Insights-extension-versions.md) 섹션을 참조하세요.

```
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 확장 업데이트
<a name="Lambda-Insights-Update-Extension-SAM-CLI"></a>

모든 Lambda 함수에 대한 Lambda Insights 확장 버전을 업데이트하려면 AWS Serverless Application Model(SAM) 템플릿의 `Globals` 섹션에서 `Layers` 속성을 Lambda Insights 계층의 ARN으로 업데이트하세요. 최신 릴리스 버전의 Lambda Insights 확장 계층에 대한 자세한 내용은 [사용 가능한 Lambda Insights 익스텐션 버전](Lambda-Insights-extension-versions.md) 섹션을 참조하세요.

다음은 모든 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"
```

## CloudFormation을 사용하여 하나 이상의 함수에 대한 Lambda Insights 확장 업데이트
<a name="Lambda-Insights-Update-Extension-CloudFormation"></a>

CloudFormation을 사용하여 Lambda Insights 확장 버전을 업데이트하려면 다음 예제와 같이 함수의 CloudFormation 리소스 내 `Layers` 속성에서 확장 계층을 업데이트합니다. 최신 릴리스 버전의 Lambda Insights 확장 계층에 대한 자세한 내용은 [사용 가능한 Lambda Insights 익스텐션 버전](Lambda-Insights-extension-versions.md) 섹션을 참조하세요.

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

## AWS CDK를 사용하여 하나 이상의 함수에 대한 Lambda Insights 확장 업데이트
<a name="Lambda-Insights-Update-Extension-CDK"></a>

`layerArn` 파라미터의 ARN 값을 사용하려는 리전 및 확장 버전과 일치하는 ARN으로 바꿔서 Lambda 함수에서 확장 버전을 업데이트할 수 있습니다. 최신 릴리스 버전의 Lambda Insights 확장 계층에 대한 자세한 내용은 [사용 가능한 Lambda Insights 익스텐션 버전](Lambda-Insights-extension-versions.md) 섹션을 참조하세요.

```
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);
```

## Serverless Framework를 사용하여 하나 이상의 함수에 대한 Lambda Insights 확장 업데이트
<a name="Lambda-Insights-Update-Extension-Serverless"></a>

다음 단계에 따라 Serverless Framework를 사용하여 기존 Lambda 함수에서 Lambda Insights 확장 버전을 업데이트할 수 있습니다. Serverless Framework에 대한 자세한 내용은 [Serverless Framework 설명서](https://serverless.com)를 참조하세요.

이 방법은 서버리스용 Lambda Insights 플러그인을 사용합니다. 자세한 내용은 [serverless-plugin-lambda-insights](https://www.npmjs.com/package/serverless-plugin-lambda-insights)를 참조하세요.

최신 버전의 서버리스 명령줄 인터페이스를 아직 설치하지 않은 경우 먼저 설치하거나 업그레이드해야 합니다. 자세한 내용은 [Setting Up Serverless Framework With AWS](https://www.serverless.com/framework/docs/getting-started/)를 참조하세요.

**Lambda 콘솔을 사용하여 업데이트하려면 다음을 수행하세요.**

1. Lambda Insights를 업데이트합니다. 아직 수행하지 않은 경우 파일 끝에 `custom` 섹션을 추가하고 `lambdaInsightsVersion` 속성 내에 Lambda Insights 버전을 지정합니다.

   ```
   custom:
       lambdaInsights:
           lambdaInsightsVersion: 53 #specify the Layer Version
   ```

1. 다음 명령을 입력하여 서버리스 서비스를 다시 배포합니다.

   ```
   serverless deploy
   ```

## Lambda 컨테이너 이미지 배포에 대한 Lambda Insights 확장 버전 업데이트
<a name="Lambda-Insights-Update-Extension-container"></a>

Lambda 컨테이너 이미지에서 Lambda Insights를 업데이트하려면 [Lambda 컨테이너 이미지 배포에서 Lambda Insights 활성화](Lambda-Insights-Getting-Started-docker.md)의 단계에 따라 최신 버전의 Lambda Insights로 이미지를 다시 빌드하세요. 그런 다음 AWS CLI를 사용하여 [함수 코드를 업데이트](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/update-function-code.html)하고 `--image-uri` 파라미터 값으로 컨테이너 이미지 URI를 제공합니다.