Amazon CloudWatch 지표 및 로그를 사용한 Amazon SNS SMS 전송 모니터링 - Amazon Simple Notification Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon CloudWatch 지표 및 로그를 사용한 Amazon SNS SMS 전송 모니터링

Amazon CloudWatch 및 Amazon CloudWatch Logs를 사용하여 SMS 메시지 전송을 모니터링할 수 있습니다.

Amazon CloudWatch 지표 보기

Amazon은 SMS 메시지 전송에 대한 지표를 SNS 자동으로 수집하여 Amazon 에 푸시합니다 CloudWatch. CloudWatch 를 사용하여 이러한 지표를 모니터링하고 지표가 임계값을 넘을 때 경고하는 경보를 생성할 수 있습니다. 예를 들어 CloudWatch 지표를 모니터링하여 SMS 전송 속도와 SMS 요금을 확인할 수 있습니다 month-to-date.

CloudWatch 지표 모니터링, CloudWatch 경보 설정 및 사용 가능한 지표 유형에 대한 자세한 내용은 섹션을 참조하세요를 사용하여 Amazon SNS 주제 모니터링 CloudWatch.

CloudWatch 로그 보기

Amazon이 Amazon CloudWatch Logs에 쓸 수 있도록 하여 성공 및 실패 SMS 메시지 전송SNS에 대한 정보를 수집할 수 있습니다. 보내는 각 SMS 메시지에 대해 Amazon은 메시지 가격, 성공 또는 실패 상태, 실패 이유(메시지가 실패한 경우), 메시지 일시 중지 시간 및 기타 정보가 포함된 로그를 SNS 작성합니다.

SMS 메시지에 대한 CloudWatch 로그를 활성화하고 보려면
  1. Amazon SNS 콘솔 에 로그인합니다.

  2. 콘솔 메뉴에서 리전 선택기를 SMS 메시징 를 지원하는 리전으로 설정합니다.

  3. 탐색 패널에서 문자 메시징(SMS)을 선택합니다.

  4. 모바일 문자 메시징(SMS) 페이지의 문자 메시징 기본 설정 섹션에서 편집을 선택합니다.

  5. 다음 페이지에서 Delivery status logging(전송 상태 로깅) 섹션을 확장합니다.

  6. 성공 샘플 비율 에서 Amazon이 로그에 로그를 SNS 작성할 성공SMS한 전송 비율을 지정합니다 CloudWatch . 예:

    • 전송 실패에 대한 로그만 작성하려면 이 값을 0으로 설정합니다.

    • 전송 성공의 10%에 대한 로그를 작성하려면 이 값을 10으로 설정합니다.

    백분율을 지정하지 않으면 Amazon은 성공한 모든 전송에 대한 로그를 SNS 작성합니다.

  7. 필요한 권한을 제공하려면 다음 중 하나를 수행하세요.

    • 새 서비스 역할을 만들려면 새 서비스 역할 생성을 선택한 다음 새 역할 생성을 선택합니다. 다음 페이지에서 허용을 선택하여 Amazon에 계정의 리소스에 대한 SNS 쓰기 액세스 권한을 부여합니다.

    • 기존 서비스 역할을 사용하려면 기존 서비스 역할 사용을 선택한 다음 IAM 성공 및 실패 배달 상자에 ARN 이름을 붙여넣습니다.

      지정하는 서비스 역할은 계정 리소스에 대한 쓰기 액세스를 허용해야 합니다. IAM 역할 생성에 대한 자세한 내용은 IAM 사용 설명서AWS 서비스에 대한 역할 생성을 참조하세요.

  8. Save changes(변경 사항 저장)를 선택합니다.

  9. 모바일 문자 메시징(SMS) 페이지로 돌아가서 전송 상태 로그 섹션으로 이동하여 사용 가능한 로그를 확인합니다.

    참고

    대상 전화번호의 통신 사업자에 따라 Amazon SNS 콘솔에 전송 로그가 표시되는 데 최대 72시간이 걸릴 수 있습니다.

성공적인 SMS 전송을 위한 로그 예

성공적인 전송을 위한 SMS 전송 상태 로그는 다음 예제와 유사합니다.

{ "notification": { "messageId": "34d9b400-c6dd-5444-820d-fbeb0f1f54cf", "timestamp": "2016-06-28 00:40:34.558" }, "delivery": { "phoneCarrier": "My Phone Carrier", "mnc": 270, "numberOfMessageParts": 1, "destination": "+1XXX5550100", "priceInUSD": 0.00645, "smsType": "Transactional", "mcc": 310, "providerResponse": "Message has been accepted by phone carrier", "dwellTimeMs": 599, "dwellTimeMsUntilDeviceAck": 1344 }, "status": "SUCCESS" }

실패한 SMS 전송에 대한 로그 예

실패한 전송에 대한 SMS 전송 상태 로그는 다음 예제와 유사합니다.

{ "notification": { "messageId": "1077257a-92f3-5ca3-bc97-6a915b310625", "timestamp": "2016-06-28 00:40:34.559" }, "delivery": { "mnc": 0, "numberOfMessageParts": 1, "destination": "+1XXX5550100", "priceInUSD": 0.00645, "smsType": "Transactional", "mcc": 0, "providerResponse": "Unknown error attempting to reach phone", "dwellTimeMs": 1420, "dwellTimeMsUntilDeviceAck": 1692 }, "status": "FAILURE" }

SMS 전송 실패 이유

실패 이유는 providerResponse 속성을 통해 제공됩니다. SMS 다음과 같은 이유로 메시지가 전송되지 않을 수 있습니다.

  • 전화 통신사가 스팸으로 차단함

  • 대상이 차단된 목록에 있음

  • 잘못된 전화번호

  • 메시지 본문이 잘못됨

  • 전화 통신사가 이 메시지를 차단함

  • 전화 통신사가 현재 연결 불가능/이용 불가능함

  • 전화가 차단되었습니다. SMS

  • 휴대폰이 차단된 목록에 있음

  • 전화가 현재 연결 불가능/이용 불가능함

  • 전화번호가 옵트아웃됨

  • 이 메시지를 전송하면 최고 가격이 초과됨

  • 전화 연결을 시도하는 중 알 수 없는 오류 발생