Serverless 비동기 실패 이벤트 보관 설정 점검

처리에 실패한 비동기 이벤트를 복구할 경로를 마련하세요.

설명

Lambda 비동기 호출이 재시도 후에도 처리되지 않으면 DLQ나 실패 대상을 통해 이벤트를 보관할 수 있습니다. Serverless Framework의 onError는 SNS 토픽을 지정하는 설정이며, 동기 호출이나 SQS 트리거의 실패 처리를 대신하지 않습니다.

잠재적 영향

별도의 실패 보관 경로가 없으면 재시도 기한이 지난 이벤트를 분석하거나 재처리하기 어려울 수 있습니다.

해결 방법

호출 방식에 맞는 실패 처리 방식을 선택하세요. onError를 쓴다면 기존 SNS 토픽과 게시 권한, 보관할 구독 대상 및 재처리 절차를 구성하세요.

예시

Framework 4와 Node.js 22에 맞는 handler.hello를 별도로 제공하는 발췌입니다. failureTopicArn에는 기존 SNS 토픽 ARN을 전달하세요.

변경 전

yaml
service: service
frameworkVersion: '4'
provider:
  name: aws
  runtime: nodejs22.x

functions:
  hello:
    handler: handler.hello

변경 후

yaml
service: service
frameworkVersion: '4'
provider:
  name: aws
  runtime: nodejs22.x

functions:
  hello:
    handler: handler.hello
    onError: ${param:failureTopicArn}

참조