안경잡이개발자

728x90
반응형

  AWS SNS의 문자 메시지(SMS) 전송 기능을 이용하다 보면, 때때로 다양한 문제에 직면할 수 있습니다. 그러한 문제에 적절히 대응하기 위해서는 AWS SMS 기능에 대한 로그(Log) 관리가 필요합니다. 로그 관리는 Text messaging (SMS) 탭에서 [Edit] 버튼을 눌러서 수행할 수 있습니다.

 

 

  여기에서는 가장 먼저 Amazon SNS가 CloudWatch Logs에 로그를 작성할 SMS 전송 성공 비율을 지정합니다. 예를 들어, 전송 실패에 대한 로그만 작성하려면 이 값을 0으로 설정합니다. 전송 성공의 10%에 대한 로그를 작성하려면 이 값을 10으로 설정합니다. 비율을 지정하지 않으면 Amazon SNS는 모든 전송 성공에 대한 로그를 작성합니다.

 

  저는 100%으로 설정했으므로 모든 문자 메시지(SMS) 전송에 대해서 로그에 기록합니다. 그리고 [Create new service role] 탭을 클릭하고 [Create new roles] 버튼을 눌러 새롭게 규칙을 설정할 수 있습니다.

 

 

  다음과 같이 SNSSuccessFeedback 규칙 이름 그대로 생성합니다.

 

 

   이제 다음과 같이 IAM 규칙(Role)이 설정이 되어서 이제 CloudWatch의 로그(Log)가 쌓이게 됩니다.

 

 

※ S3 로그 저장 ※

 

  AWS 문자 메시지(SMS) 로그는 S3에 저장할 수도 있습니다. 이를 위해서 AWS S3 서비스에서 [Create Bucket]을 눌러서 하나의 새로운 버킷(Bucket)을 만들 수 있습니다.

 

 

  버킷의 이름을 설정해 생성합니다.

 

 

  이후에 [Edit Text Messaging Preferences] 탭에서 해당 AWS S3 버킷을 Report 전송용으로 설정하면 됩니다. 그러면 매일매일의 SMS 사용량 Report가 S3에 전송된다는 특징이 있습니다.

 

 

  다만 이 경우 AWS SNS가 해당 버킷(Bucket)에 쓰기 권한이 있어야 하기 때문에, 간단히 S3의 [Bucket Policy]를 설정해보도록 하겠습니다. [Policy Generator]를 눌러서 정책을 생성합니다.

 

 

  먼저 자신의 AWS Bucket의 경로(ARN)에 Put Object 액션(Action)을 부여합니다.

 

 

  이후에 자신의 AWS Bucket의 경로(ARN)에 GetBucketLocation 액션(Action)을 부여합니다.

 

 

  그리고 [Generate Policy] 버튼을 눌러서 정책 명령어를 생성할 수 있습니다.

 

 

  이제 다시 AWS S3의 [Permissions] 탭에서 버킷 정책(Bucket Policy)을 바꿀 수 있도록 설정합니다.

 

 

  이제 [Bucket Policy] 탭에 정책 내용을 붙여넣기 하여 적용하면 됩니다.

 

 

728x90
반응형