Amazon Simple Notification Service(Amazon SNS) 푸시 알림의 전송 상태는 어떻게 확인하며, 일부 알림에 실패하는 이유를 확인하려면 어떻게 해야 합니까?

플랫폼 애플리케이션에 대한 Amazon SNS 전송 상태 로깅을 활성화하면 전송 성공 및 실패를 비롯하여 Amazon CloudWatch Logs에 푸시 트랜잭션을 로깅합니다.

전송 상태 로깅 켜기

  1. Amazon SNS 콘솔을 엽니다.
  2. 왼쪽 탐색 메뉴에서 [Mobile]을 확장하고 [Push notifications]를 선택합니다.
  3. [Platform applications]에서 전송 상태를 활성화하려는 플랫폼 애플리케이션을 선택하고 [Edit]를 선택합니다.
  4. [Delivery status logging – optional]을 확장하고 [Create new service role]을 선택합니다.
  5. [Create new roles]를 선택합니다. AWS Identity and Access Management(IAM) 콘솔은 새 탭이나 창에서 열립니다.
  6. IAM 콘솔 권한 요청 페이지에서 [Allow]를 선택합니다.
  7. [Save changes]를 선택합니다.

참고: 또한 AWS SDKAWS CLI(AWS 명령줄 인터페이스)를 사용하여 전송 상태를 활성화할 수도 있습니다.

전송 상태 로그 보기

  1. CloudWatch 콘솔을 엽니다.
  2. 왼쪽 탐색 창에서 [Logs]를 선택합니다.
  3. [Log Groups]에서 애플리케이션의 전송 상태 로그를 찾습니다.

메시지 전송 상태 로그는 엔드포인트에 메시지를 게시할 때까지 사용할 수 없습니다. 푸시 알림의 경우 Amazon SNS가 제공자에게 메시지를 전송한 경우 게시에 성공합니다. 그러나 이러한 전송은 디바이스로 알림을 전송한다고 보장하지는 않습니다.

애플리케이션 유형에 따라 두 개 로그 그룹(성공한 알림 및 실패한 알림에 대해 하나씩)을 볼 수 있습니다. FCM(Firebase Cloud Messaging) 및 APN(Apple Push Notification) 서비스에 대한 로그는 다음 예와 같은 이름의 로그 그룹에 있습니다.

sns/us-east-1/123456789012/app/platform_name/application_name/

전송에 실패한 경우 "Failure"가 로그 항목에 추가됩니다. 예:

sns/us-east-1/123456789012/app/platform_name/application_name/Failure

일부 로그 세부 정보에는 messageId, statusCode, 걸린 시간(dwellTimeMs), 대상 엔드포인트(destination) 및 providerResponse가 있습니다. 예를 들어, Amazon SNS 메시지 전송 상태 CloudWatch Log 예를 참조하십시오.

알림 실패 문제 해결

공급자 서비스(예: FCM 또는 APN)에 대한 statusCode를 찾습니다. 공급자의 정확한 응답 메시지는 providerResponse를 확인합니다.


페이지 내용이 도움이 되었습니까? | 아니요

AWS 지원 지식 센터로 돌아가기

도움이 필요하십니까? AWS 지원 센터를 방문하십시오.

게시 날짜: 2016년 8월 24일

업데이트 날짜: 2019년 3월 19일