쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Lambda 컨텍스트 객체를 사용하여 Java 함수 정보 검색

포커스 모드
Lambda 컨텍스트 객체를 사용하여 Java 함수 정보 검색 - AWS Lambda

Lambda는 함수를 실행할 때 컨텍스트 객체를 핸들러에 전달합니다. 이 객체는 호출, 함수 및 실행 환경에 관한 정보를 제공하는 메서드 및 속성들을 제공합니다.

컨텍스트 메서드
  • getRemainingTimeInMillis() – 실행 시간이 초과되기까지 남은 시간(밀리초)을 반환합니다.

  • getFunctionName() – Lambda 함수의 이름을 반환합니다.

  • getFunctionVersion() – 함수의 버전을 반환합니다.

  • getInvokedFunctionArn() – 함수를 간접 호출할 때 사용하는 Amazon 리소스 이름(ARN)을 반환합니다. 간접 호출자가 버전 번호 또는 별칭을 지정했는지 여부를 나타냅니다.

  • getMemoryLimitInMB() – 함수에 할당된 메모리의 양을 반환합니다.

  • getAwsRequestId() – 호출 요청의 식별자를 반환합니다.

  • getLogGroupName() – 함수에 대한 로그 그룹을 반환합니다.

  • getLogStreamName() – 함수 인스턴스에 대한 로그 스트림을 반환합니다.

  • getIdentity() – (모바일 앱) 요청을 승인한 Amazon Cognito 자격 증명에 대한 정보를 반환합니다.

  • getClientContext() – (모바일 앱) 클라이언트 애플리케이션이 Lambda에게 제공한 클라이언트 컨텍스트를 반환합니다.

  • getLogger() – 함수에 대한 로거 객체를 반환합니다.

다음 예제에서는 컨텍스트 객체를 사용하여 Lambda 로거에 액세스하는 함수를 보여 줍니다.

Handler.java
package example; import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.LambdaLogger; import com.amazonaws.services.lambda.runtime.RequestHandler; import java.util.Map; // Handler value: example.Handler public class Handler implements RequestHandler<Map<String,String>, Void>{ @Override public Void handleRequest(Map<String,String> event, Context context) { LambdaLogger logger = context.getLogger(); logger.log("EVENT TYPE: " + event.getClass()); return null; } }

이 함수는 null을 반환하기 전에 수신 이벤트의 클래스 유형을 기록합니다.

예 로그 출력
EVENT TYPE: class java.util.LinkedHashMap

컨텍스트 객체에 대한 인터페이스는 aws-lambda-java-core 라이브러리에서 사용할 수 있습니다. 이 인터페이스를 구현하여 테스트용 컨텍스트 클래스를 만들 수 있습니다. 다음 예제에서는 대부분의 속성 및 작업 테스트 로거에 대해 더미 값을 반환하는 컨텍스트 클래스를 보여 줍니다.

src/test/java/example/TestContext.java
package example; import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.CognitoIdentity; import com.amazonaws.services.lambda.runtime.ClientContext; import com.amazonaws.services.lambda.runtime.LambdaLogger; public class TestContext implements Context{ public TestContext() {} public String getAwsRequestId(){ return new String("495b12a8-xmpl-4eca-8168-160484189f99"); } public String getLogGroupName(){ return new String("/aws/lambda/my-function"); } public String getLogStreamName(){ return new String("2020/02/26/[$LATEST]704f8dxmpla04097b9134246b8438f1a"); } public String getFunctionName(){ return new String("my-function"); } public String getFunctionVersion(){ return new String("$LATEST"); } public String getInvokedFunctionArn(){ return new String("arn:aws:lambda:us-east-2:123456789012:function:my-function"); } public CognitoIdentity getIdentity(){ return null; } public ClientContext getClientContext(){ return null; } public int getRemainingTimeInMillis(){ return 300000; } public int getMemoryLimitInMB(){ return 512; } public LambdaLogger getLogger(){ return new TestLogger(); } }

로깅에 대한 자세한 내용은 Java Lambda 함수 로깅 및 모니터링 단원을 참조하세요.

샘플 애플리케이션의 컨텍스트

이 안내서의 GitHub 리포지토리에는 컨텍스트 객체의 사용을 보여주는 샘플 애플리케이션이 들어 있습니다. 각 샘플 애플리케이션에는 간편한 배포 및 정리를 위한 스크립트, AWS Serverless Application Model(AWS SAM) 템플릿 및 지원 리소스가 포함되어 있습니다.

Java의 샘플 Lambda 애플리케이션
  • example-java – Lambda를 사용하여 주문을 처리하는 방법을 보여주는 Java 함수입니다. 이 함수는 사용자 지정 입력 이벤트 객체를 정의 및 역직렬화하고 AWS SDK를 사용하며 로깅을 출력하는 방법을 보여줍니다.

  • java-basic – 단위 테스트 및 변수 로깅 구성을 사용하는 최소한의 Java 함수 모음입니다.

  • java - Amazon API Gateway, Amazon SQS 및 Amazon Kinesis와 같은 다양한 서비스의 이벤트를 처리하는 방법에 대한 스켈레톤 코드가 포함된 Java 함수 모음입니다. 이러한 함수는 최신 버전의 aws-lambda-java-events 라이브러리(3.0.0 이상)를 사용합니다. 이러한 예는 AWS SDK를 종속 항목으로 요구하지 않습니다.

  • s3-java – Amazon S3의 알림 이벤트를 처리하고 JCL(Java Class Library)을 사용하여 업로드된 이미지 파일의 썸네일을 생성하는 Java 함수입니다.

  • layer-java - Lambda 계층을 사용하여 코어 함수 코드와 별도로 종속성을 패키징하는 방법을 보여주는 Java 함수입니다.

이 페이지에서

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.