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

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

참고

Rust 런타임 클라이언트는 실험용 패키지입니다. 변경될 수 있으며 평가 목적으로만 사용됩니다.

Lambda가 함수를 실행하면 핸들러가 수신하는 LambdaEvent에 컨텍스트 객체가 추가됩니다. 이 객체는 호출, 함수 및 실행 환경에 관한 정보를 속성에 제공합니다.

컨텍스트 속성
  • request_id: Lambda 서비스에서 생성한 AWS 요청 ID입니다.

  • deadline: 현재 호출의 실행 기한(밀리초)입니다.

  • invoked_function_arn: 호출 중인 Lambda 함수의 Amazon 리소스 이름(ARN)입니다.

  • xray_trace_id: 현재 호출에 대한 AWS X-Ray 기록 ID입니다.

  • client_content: AWS 모바일 SDK에서 전송한 클라이언트 컨텍스트 객체입니다. AWS 모바일 SDK를 사용하여 함수를 호출하지 않는 한 이 필드는 비어 있습니다.

  • identity: 함수를 호출한 Amazon Cognito ID입니다. Lambda API에 대한 호출 요청이 Amazon Cognito 자격 증명 풀에서 발급한 AWS 자격 증명을 사용하여 이루어지지 않은 경우 이 필드는 비어 있습니다.

  • env_config: 로컬 환경 변수의 Lambda 함수 구성입니다. 이 속성에는 함수 이름, 메모리 할당, 버전 및 로그 스트림과 같은 정보가 포함됩니다.

호출 컨텍스트 정보 액세스

Lambda 함수들은 자신의 환경과 호출 요청에 관한 메타데이터에 액세스할 수 있습니다. 함수 핸들러가 수신하는 LambaEvent 객체에는 context 메타데이터가 포함됩니다.

use lambda_runtime::{service_fn, LambdaEvent, Error}; use serde_json::{json, Value}; async fn handler(event: LambdaEvent<Value>) -> Result<Value, Error> { let invoked_function_arn = event.context.invoked_function_arn; Ok(json!({ "message": format!("Hello, this is function {invoked_function_arn}!") })) } #[tokio::main] async fn main() -> Result<(), Error> { lambda_runtime::run(service_fn(handler)).await }