기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
자습서: 파이프라인 상태 변경에 대한 이메일 알림을 수신하도록 CloudWatch Events 규칙을 설정합니다.
에서 AWS CodePipeline파이프라인을 설정한 후에는 파이프라인의 실행 상태나 파이프라인의 단계 또는 작업이 변경될 때마다 알림을 보내도록 CloudWatch 이벤트 규칙을 설정할 수 있습니다. CloudWatch 이벤트를 사용하여 파이프라인 상태 변경에 대한 알림을 설정하는 방법에 대한 자세한 내용은 을 참조하십시오. CodePipeline 이벤트 모니터링
이 자습서에서는 파이프라인의 상태가 FAILED로 변경되면 이메일을 보내도록 알림을 구성합니다. 이 자습서에서는 CloudWatch Events 규칙을 생성할 때 입력 변환기 메서드를 사용합니다. 이는 사람이 읽을 수 있는 텍스트로 메시지를 전달하도록 메시지 스키마 세부 정보를 변환합니다.
참고
Amazon SNS 알림 및 CloudWatch Events 규칙과 같은 이 자습서의 리소스를 생성할 때는 리소스가 파이프라인과 동일한 AWS 지역에 생성되었는지 확인하십시오.
1단계: Amazon SNS를 사용하여 이메일 알림 설정
Amazon SNS는 주제 사용을 조정하여 구독 엔드포인트 또는 클라이언트에 메시지를 전달합니다. Amazon SNS를 사용하여 알림 주제를 만든 후 이메일 주소를 사용하여 해당 주제를 구독합니다. Amazon SNS 주제가 CloudWatch 이벤트 규칙에 대상으로 추가됩니다. 자세한 내용은 Amazon Simple Notification Service Developer Guide를 참조하십시오.
Amazon SNS에서 주제를 만들거나 식별하십시오. CodePipeline CloudWatch 이벤트를 사용하여 Amazon SNS를 통해 이 주제에 대한 알림을 보냅니다. 주제를 생성하려면 다음과 같이 합니다.
-
https://console.aws.amazon.com/sns
에서 아마존 SNS 콘솔을 엽니다. -
주제 생성을 선택합니다.
-
새로운 주제 생성 대화 상자의 주제 이름에 주제 이름(예:
PipelineNotificationTopic
)을 입력합니다. -
주제 생성을 선택합니다.
자세한 내용은 Amazon SNS 개발자 안내서의 주제 생성을 참조하세요.
한 명 이상의 수신자가 주제를 구독하여 이메일 알림을 수신하게 합니다. 수신자가 주제를 구독하게 하려면 다음과 같이 합니다.
-
Amazon SNS 콘솔의 주제 목록에서 새 주제 옆의 확인란을 선택합니다. [Actions, Subscribe to topic]을 선택합니다.
-
[Create subscription] 대화 상자에서 ARN이 [Topic ARN]에 표시되는지 확인합니다.
-
프로토콜에서 이메일을 선택합니다.
-
엔드포인트에 수신자의 전체 이메일 주소를 입력합니다.
-
구독 생성을 선택합니다.
-
Amazon SNS가 수신자에게 구독 확인 이메일을 보냅니다. 이메일 알림을 수신하려면 수신자는 이 이메일에서 [Confirm subscription] 링크를 선택해야 합니다. 수신자가 링크를 클릭한 후 구독에 성공하면 Amazon SNS가 해당 수신자의 웹 브라우저에 확인 메시지를 표시합니다.
자세한 내용은 Amazon SNS 개발자 가이드의 주제 구독을 참조하세요.
2단계: 규칙을 만들고 SNS 주제를 대상으로 추가
CloudWatch 이벤트 소스로 사용하여 CodePipeline 이벤트 알림 규칙을 생성합니다.
https://console.aws.amazon.com/cloudwatch/
에서 CloudWatch 콘솔을 엽니다. -
탐색 창에서 이벤트를 선택합니다.
-
Create rule을 선택합니다. 이벤트 소스 아래에서 AWS CodePipeline을 선택합니다. [Event Type]에서 [Pipeline Execution State Change]를 선택합니다.
-
특정 상태를 선택한 후
FAILED
를 선택합니다. -
[Edit]를 선택하여 [Event Pattern Preview] 창의 JSON 편집기를 엽니다. 파이프라인 이름이 "myPipeline"인 다음 예와 같이 파이프라인 이름을 지정하여
pipeline
파라미터를 추가합니다.여기에서 이벤트 패턴을 복사하여 콘솔에 붙여 넣을 수 있습니다.
{ "source": [ "aws.codepipeline" ], "detail-type": [ "CodePipeline Pipeline Execution State Change" ], "detail": { "state": [ "FAILED" ], "pipeline": [ "myPipeline" ] } }
-
대상(Targets)에서 대상 추가(Add target)를 선택합니다.
-
대상 목록에서 SNS 주제를 선택합니다. [Topic]에 생성한 주제를 입력합니다.
-
입력 구성을 확장한 후 입력 변환기를 선택합니다.
-
[Input Path] 상자에 다음 키-값 페어를 입력합니다.
{ "pipeline" : "$.detail.pipeline" }
[Input Template] 상자에 다음을 입력합니다.
"The Pipeline <pipeline> has failed."
-
세부 정보 구성을 선택합니다.
-
[Configure rule details] 페이지에 이름과 설명(선택 사항)을 입력합니다. [State]에서 [Enabled] 상자를 선택된 상태로 둡니다.
-
Create rule을 선택합니다.
-
이제 빌드 알림을 보내고 CodePipeline 있는지 확인하세요. 예를 들어 빌드 알림 이메일이 현재 받은 편지함에 있는지 확인합니다.
-
규칙의 동작을 변경하려면 CloudWatch 콘솔에서 규칙을 선택한 다음 작업, 편집을 선택합니다. 규칙을 편집하고 [Configure details]를 선택한 후 [Update rule]을 선택합니다.
규칙을 사용하여 빌드 알림을 보내는 것을 중지하려면 CloudWatch 콘솔에서 규칙을 선택한 다음 Actions, Disable을 선택합니다.
규칙을 삭제하려면 CloudWatch 콘솔에서 규칙을 선택한 다음 작업, 삭제를 선택합니다.
3단계: 리소스 정리
이 자습서를 완료한 후에는 사용한 파이프라인과 리소스를 삭제해야 이 리소스를 계속 사용할 경우 부과되는 요금을 피할 수 있습니다.
SNS 알림을 정리하고 Amazon CloudWatch Events 규칙을 삭제하는 방법에 대한 자세한 내용은 정리 (Amazon SNS 주제 구독 취소) 및 Amazon CloudWatch Events API DeleteRule
참조의 참조를 참조하십시오.