투케이2K

188. (Aws/Amazon) [AWS Lambda] AWS Lambda 람다 함수 정보 조회 GetFunction API 설명 정리 본문

Aws (Amazon)

188. (Aws/Amazon) [AWS Lambda] AWS Lambda 람다 함수 정보 조회 GetFunction API 설명 정리

투케이2K 2026. 2. 24. 20:27
728x90
반응형

[개발 환경 설정]

개발 환경 : Aws / Amazon Web Services

 

[설명 정리]

// --------------------------------------------------------------------------------------
[개발 및 환경]
// --------------------------------------------------------------------------------------

- 인프라 : Aws / Amazon Web Services


- 기술 구분 : Aws / Lambda / GetFunction


- 사전) AWS Lambda 간단 설명 : 

  >> Aws Lambda 는 서버 리스 FaaS 솔루션으로, 함수의 인스턴스를 실행하여 이벤트를 처리할 수 있습니다.

  >> Aws Lambda 는 이벤트에 응답하여 코드를 실행 하고 해당 코드에 필요한 컴퓨팅 리소스를 자동으로 관리합니다.


- 사전) API Gateway 간단 설명 : 

  >> API Gateway 는 규모와 관계없이 REST 및 WebSocket API 를 생성, 게시, 유지, 모니터링 및 보호하기 위한 AWS 서비스입니다

  >> API Gateway 는 트래픽 관리, CORS 지원, 권한 부여 및 액세스 제어, 제한, 모니터링 및 API 버전 관리 등 최대 수십만 개의 동시 API 호출을 수신 및 처리하는 데 관계된 모든 작업을 처리합니다

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[설 명] 
// --------------------------------------------------------------------------------------

1. GetFunction 는 Lambda 함수 (또는 특정 함수 버전/별칭) 에 대한 상세 정보를 조회하는 API입니다.


2. GetFunction API 를 호출하면 함수 메타데이터 + 배포 패키지 다운로드 URL (10분 유효) 등을 포함한 다양한 정보를 반환합니다.


3. GetFunction 주요 기능 : 

  >> 함수 정보 조회 : 

    - 함수 이름, ARN, 메모리/타임아웃 설정, 역할(Role), 런타임 등 Configuration 정보를 반환합니다.
    - 특정 버전 또는 별칭을 지정하면 해당 버전에 대한 정보만 반환됩니다.

  >> 배포 패키지 다운로드 링크 제공 : 

    - Code.Location 필드에 10분간 유효한 다운로드 URL을 제공합니다.
    - ZIP 패키지 혹은 이미지 기반 함수의 이미지 URI 정보도 포함됩니다.

  >> 동시성 설정 정보 : 

    - 예약된 동시 실행 수 (ReservedConcurrentExecutions) 정보를 포함할 수 있습니다.


4. ✅ GetFunction 호출 시 요청 전문

  >> GET /2015-03-31/functions/FunctionName?Qualifier=Qualifier HTTP/1.1

  >> FunctionName (필수) : 함수명 또는 ARN / 별칭

  >> Qualifier (선택) : 조회할 함수의 버전 번호(Published Version) 또는 별칭(Alias)


5. ✅ GetFunction 응답 전문

  >> GetFunction 응답 JSON 예시 : 

  {
    "Code": {
      "RepositoryType": "S3",
      "Location": "https://awslambda-us-west-2-tasks.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-function?X-Amz-Security-Token=...",
      "ImageUri": null,
      "ResolvedImageUri": null,
      "SourceKMSKeyArn": null
    },
    "Concurrency": {
      "ReservedConcurrentExecutions": 100
    },
    "Configuration": {
      "FunctionName": "my-function",
      "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function",
      "Runtime": "nodejs18.x",
      "Role": "arn:aws:iam::123456789012:role/lambda-basic-role",
      "Handler": "index.handler",
      "CodeSize": 304,
      "Description": "Example Lambda function",
      "Timeout": 3,
      "MemorySize": 128,
      "LastModified": "2025-11-15T07:44:53.123+0000",
      "CodeSha256": "5tT2qgzYUHoqwR616pZ2dpkn/0J1FrzJmlKidWaaCgk=",
      "Version": "$LATEST",

      "Environment": {
        "Variables": {
          "ENV_TYPE": "prod",
          "LOG_LEVEL": "debug"
        },
        "Error": null
      },

      "VpcConfig": {
        "SubnetIds": [],
        "SecurityGroupIds": [],
        "VpcId": ""
      },

      "TracingConfig": {
        "Mode": "PassThrough"
      },

      "RevisionId": "28f0fb31-5c5c-43d3-8955-03e76c5c1075",

      "Architectures": ["x86_64"],

      "EphemeralStorage": {
        "Size": 512
      },

      "FileSystemConfigs": [],

      "KMSKeyArn": null,

      "PackageType": "Zip",

      "ImageConfigResponse": {
        "Error": null,
        "ImageConfig": null
      },

      "Layers": [],

      "MasterArn": null,

      "SigningJobArn": null,
      "SigningProfileVersionArn": null
    }
  }


6. ❌ GetFunction 호출 주요 에러 발생 코드 : 

  >> ResourceNotFoundException : 존재하지 않는 함수명/버전/에일리어스 요청 시 발생 에러 코드
                
  >> InvalidParameterValueException : FunctionName 형식/Qualifier가 유효하지 않은 경우 등 잘못된 파라미터 요청 시 발생 에러 코드
                
  >> TooManyRequestsException : 호출이 과도할 때(서빙 한도 초과), 재시도(backoff) 필요할 때 발생하는 에러 코드
                
  >> ServiceException : 내부 서비스 오류. 보통 재시도 시 복구 됨


7. ✅ GetFunction 호출 자바스크립트 예시 소스 코드 : 

<script src="https://sdk.amazonaws.com/js/aws-sdk-2.1416.0.min.js"></script>

<script>

  // [AWS 인증 변수 선언]
  const accessKey = 'AK..A6';
  const secretKey = 'mP..5J';
  const region = 'ap-northeast-2';


  // [AWS 람다 함수 명칭 선언] 
  const functionName = 'device-queue-manager';


  window.onload = async function() {

    // -----------------------------------------
    // [AWS.config 지정]
    // -----------------------------------------       
    AWS.config.update({
      region: region,          
      accessKeyId: accessKey,
      secretAccessKey: secretKey
    });


    // -----------------------------------------
    // [AWS 객체 생성]
    // -----------------------------------------
    const aws = AWS.Lambda();


    // -----------------------------------------
    // [getFunction] : AWS 람다 특정 함수 정보 조회 수행
    // -----------------------------------------
    // AWS 참고 사이트 : https://docs.aws.amazon.com/ko_kr/lambda/latest/api/API_GetFunction.html
    // -----------------------------------------
    const param = { // ✅ Request_파라미터
      FunctionName: functionName
    };

    aws.getFunction( param , (err, data) => {
      if (err) console.error(err);
      else console.log(JSON.stringify(data));
    });

  };

</script>

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------

[AWS Lambda] AWS Lambda 람다 함수 목록 리스트 조회 ListFunctions API 설명 정리

https://kkh0977.tistory.com/8646

https://blog.naver.com/kkh0977/224191409655


[AWS Lambda] Aws 람다 Python 3.13 기반 기본 함수 구조 설명 정리

https://kkh0977.tistory.com/8188

https://blog.naver.com/kkh0977/223962723156?trackingCode=blog_bloghome_searchlist


[AWS] [Lambda] 런타임 Python 3.13 - boto3 모듈 사용해 AWS Lambda 람다 함수 리스트 목록 조회

https://kkh0977.tistory.com/8286

https://blog.naver.com/kkh0977/224014658387?trackingCode=blog_bloghome_searchlist

[Aws Lambda] Aws 사이트에서 생성 된 Lambda 람다 검증 함수 리스트 및 내용 소스 코드 확인 방법

https://blog.naver.com/kkh0977/223765198383


[AWS] Lambda 람다 함수 수행 errorType Sandbox.Timedout 에러 발생

https://blog.naver.com/kkh0977/223962778768

// --------------------------------------------------------------------------------------
 
728x90
반응형
Comments