이번에는
CloudWatch Synthetics Canary에 관해 얘기해 볼텐데
이것은 여러분이 가진 구성 가능 스크립트를
CloudWatch에서 실행함으로
API, URL, 또는 웹사이트를 모니터하는 기능입니다
여러분이 스크립트를 정의하면
해당 스크립트가 여러분의 고객이 하는 것을
프로그램적으로 복제한다는 것인데
예를 들어보자면
여러분의 고객이 제품 웹페이지에 접속해서
클릭을 하고, 장바구니에 물건을 넣고
결제창에서 신용카드 정보를 입력하고
결제가 진행되도록 하는 등의 과정을
Synthetics Canary로 모두 테스팅하고 복제하는 겁니다
스크립트가 어떤 이유로든 오작동한다는 것은
어떠한 문제점이 발견되었다는 것이고
고객보다 먼저 이를 파악하는 것이 좋습니다
어떤 플로우가 작동하는지
확인할 수 있는 겁니다
또한 일부 엔드포인트의 가용성과 지연성을 확인하거나
로드타임 데이터를 저장한다던가
UI의 스크린샷도 찍을 수 있습니다
예를 들어보겠습니다
US-East-1에 배포된 응용프로그램이 있고
해당 응용프로그램을 모니터하기 위해
Synthetics Canary를 사용할거라 해봅시다
만약 무언가 오작동한다면
CloudWatch 경보가 울릴 것이고 이로 인해 Lambda 함수가 발동할 것이고
Lambda 함수는 루트 53의 DNS 기록을
US-West-2의 다른 인스턴스로 업데이트해
애플리케이션에서 제대로 동작하고 있는 버전으로
우회하도록 할 수 있습니다
이것은 하나의 방안일 뿐입니다
Synthetics Canary가 실행할 수 있는 스크립트는
Node.js나 Python에서 작성할 수 있고
Synthetics Canary에서는 이와 더블어
헤드리스 Google Chrome 브라우저에 대한 액세스 또한 제공하기 때문에
Google Chrome으로 할 수 있는 것이라면 무엇이든
Synthetics Canary 내에서 직접 할 수 있습니다
스크립트를 일회성으로 실행하거나
주기적으로 실행하는 방식으로
엔드포인트의 가용성을
확인할 수도 있습니다
블루프린트의 활용 또한 가능합니다
URL을 로드하거나 스크린샷 및 HTTP 아카이브
파일을 저장할 수 있는 Heartbeat Monitor로
모든 것들이 제대로 작동하는지 확인할 수 있고
API Canary는 REST API의
기본적인 읽기와 쓰기를 테스트합니다
Broken Link Checker는
테스팅하는 URL 내의 모든 링크를 검사해서
깨진 링크로 가지 않도록
도와주는 역할을 하고
Visual Monitoring은 카나리 실행 중 찍힌 스크린샷과
이전에 찍어둔
기준 스크린샷을 비교합니다
Canary Recorder는
CloudWatch Synthetics Recorder와 함께 사용하는데
여러분의 웹사이트상 동작을 기록하고
이로부터 자동으로 스크립트가 생성되어
이것을 Synthetics Canary에서 바로 실행해
자동적으로 해당 동작이 반복되도록 합니다
마지막은 GUI Workflow Builder인데
여러분의 웹페이지에서 실행된 동작
예를 들면 로그인 양식 관련 동작 등이
제대로 작동하는지를 확인할 수 있습니다
CloudWatch Synthetics Canary는 여기까지입니다
즐거우셨길 바라며, 다음 강의에서 뵙겠습니다