AWS Lambda 확장 프로그램

Apigee Edge 문서입니다.
Apigee X 문서로 이동
정보

버전: 2.0.0

AWS Lambda에 배포된 함수를 실행합니다. 이 확장 프로그램을 사용하여 AWS 계정에서 사용할 수 있는 함수를 나열한 다음 특정 함수를 호출합니다.

기본 요건

ExtensionCallout 정책을 사용하여 API 프록시에서 확장 프로그램을 사용하려면 먼저 다음을 실행해야 합니다.

AWS Lambda 정보

AWS Lambda는 지원되는 언어 중 하나로 함수를 실행할 수 있는 컴퓨팅 환경을 제공합니다.

작업

호출하기

AWS Lambda에서 함수를 호출합니다.

매개변수에 관한 자세한 내용은 AWS Lambda 호출 문서를 참고하세요.

구문

<Action>invoke</Action>
<Input><![CDATA[
{
  "functionName" : "function-on-lambda",
  "invocationType" : "RequestResponse | Event | DryRun",
  "logType" : "None | Tail",
  "qualifier" : "Version-or-alias",
  "payload" : "Escaped-JSON-string"
}
]]>
</Input>
<Output>flow-variable</Output>

<Action>invoke</Action>
<Input><![CDATA[
{
  "functionName" : "helloWorld",
  "invocationType" : "RequestResponse",
  "logType" : "None",
  "qualifier" : "$LATEST",
  "payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>

요청 매개변수

매개변수에 관한 자세한 내용은 AWS Lambda 호출 문서를 참고하세요.

매개변수 설명 유형 기본값 필수
functionName 호출할 함수의 이름입니다. 문자열. 없음 예.
invocationType 함수를 동기식 또는 비동기식으로 호출할지 또는 매개변수 값을 검증할지 지정합니다. 문자열. 없음 아니요.
logType 마지막 4KB의 로그 데이터를 반환할지 여부를 지정할 수 있습니다. 문자열 없음 아니요.
한정자 게시된 Lambda 함수의 별칭 버전입니다. 문자열 없음 아니요.
payload Lambda 함수의 입력으로 JSON 문자열 없음 아니요.

응답

특정 버전 세부정보가 포함된 함수 배열입니다. 다음은 그 예시입니다.

{
  "StatusCode" : 200,
  "Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}

응답 속성

속성 설명 유형 기본값
StatusCode HTTP 상태 코드 정수 없음
페이로드 함수에서 반환된 객체를 나타내는 JSON입니다. 호출 유형이 RequestResponse인 경우에만 표시됩니다. 함수 오류의 경우 오류 설명 메시지가 포함됩니다. 문자열 없음

listFunctions

사용 가능한 AWS Lambda 함수를 나열합니다.

매개변수에 관한 자세한 내용은 AWS Lambda ListFunctions 문서를 참고하세요.

구문

<Action>listFunctions</Action>
<Input><![CDATA[
{
  "masterRegion" : "ALL | [a-z]{2}(-gov)?-[a-z]+-\d{1}",
  "functionVersion" : "ALL",
  "maxItems" : 1 - 10000
}
]]>
</Input>
<Output>flow-variable</Output>

<Action>listFunctions</Action>
<Input><![CDATA[
{
  "masterRegion" : "ALL",
  "functionVersion" : "ALL",
  "maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>

요청 매개변수

매개변수에 관한 자세한 내용은 AWS Lambda ListFunctions 문서를 참고하세요.

매개변수 설명 유형 기본값 필수
masterRegion 함수가 나열되어야 하는 리전 (예: us-east-2)입니다. ALL: 모든 리전의 함수를 포함합니다. 지정하는 경우 functionVersion도 지정해야 합니다. 문자열 없음 아니요.
functionVersion ALL를 지정하여 게시된 모든 버전을 나열합니다. 지정하지 않으면 게시되지 않은 최신 버전 ARN만 반환됩니다. 문자열 없음 아니요.
maxItems 응답에서 반환할 최대 함수 수입니다. 0보다 커야 합니다. 반환될 수 있는 절대 최대값은 50입니다. 정수 없음 아니요.

응답

특정 버전 세부정보가 포함된 함수 배열을 나타내는 JSON입니다.

[
  {
    "FunctionName": "helloWorld",
    "FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
    "Runtime": "nodejs",
    "Role": "arn:aws:iam::012345:role/service-role/fakeRole",
    "Handler": "index.handler",
    "Description": "A Hello World lambda function.",
    "Version": "$LATEST"
  },
  {
    "FunctionName": "helloWorld",
    "FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
    "Runtime": "nodejs",
    "Role": "arn:aws:iam::012345:role/service-role/fakeRole",
    "Handler": "index.handler",
    "Description": "A Hello World lambda function.",
    "Version": "1"
  }
]

응답 속성

속성 설명 유형 기본값
설명 함수에 대한 설명입니다. 문자열. 없음
Handler Lambda가 함수 실행을 시작하기 위해 호출하는 함수입니다. 문자열. 없음
FunctionArn 함수의 Amazon 리소스 이름입니다. 문자열. 없음
FunctionName 함수 이름입니다. 문자열. 없음
역할 함수의 실행 역할입니다. 문자열. 없음
런타임 함수의 런타임 환경 문자열. 없음
버전 함수의 버전입니다. 문자열. 없음

구성 참조

API 프록시에서 사용하도록 이 확장 프로그램을 구성하고 배포할 때 다음을 사용하세요. Apigee 콘솔을 사용하여 확장 프로그램을 구성하는 단계는 확장 프로그램 추가 및 구성을 참고하세요.

일반적인 확장 속성

모든 확장 프로그램에는 다음과 같은 속성이 있습니다.

속성 설명 기본 필수
name 확장 프로그램의 구성에 지정할 이름입니다. 없음 지원됨
packageName Apigee Edge에서 제공하는 확장 프로그램 패키지 이름입니다. 없음 지원됨
version 확장 프로그램을 구성하는 확장 프로그램 패키지의 버전 번호입니다. 없음 지원됨
configuration 추가하는 확장 프로그램 관련 구성 값입니다. 이 확장 프로그램 속성의 속성을 참조하세요. 없음 지원됨

이 확장 프로그램 패키지의 속성

이 확장 프로그램에만 해당하는 다음 구성 속성의 값을 지정합니다.

속성 설명 기본값 필수
AWS Lambda 리전 함수가 배포된 리전의 이름입니다. 예: us-east-1 없음 예.
사용자 인증 정보 Apigee Edge 콘솔에 입력하면 다음과 같은 형식의 Amazon 액세스 키 ID 및 액세스 키가 포함된 JSON 파일이 됩니다.

{
"accessKeyId" : "access-key-ID",
"secretAccessKey" : "secret-access-key"
}

관리 API를 통해 전송되면 해당 키 JSON 파일에서 생성된 base64로 인코딩된 값입니다.
없음 예.