애플리케이션 오류 문제 해결 - Amazon CloudWatch

애플리케이션 오류 문제 해결

Application Signals를 사용하면 애플리케이션에서 드물게 발생하는 지연 시간 스파이크 문제를 해결할 수 있습니다. 트랜잭션 검색을 활성화하고, 스팬의 100%를 캡처하도록 헤드 샘플링 비율을 구성하면 어떤 애플리케이션 문제도 완전하게 파악할 수 있습니다. 다음 시나리오에서는 Application Signals를 트랜잭션 스팬과 함께 사용하여 서비스를 모니터링하고, 서비스 품질 문제를 식별할 수 있는 방법을 설명합니다.

문제 해결 시나리오 예제

이 시나리오에서는 서드 파티 결제 API를 직접적으로 호출하는 여러 가지 마이크로서비스로 구성된 동물병원 애플리케이션을 중점적으로 살펴봅니다. 이러한 직접 호출 속도가 간헐적으로 저하되어 수익에 영향을 미쳤습니다.

Jane은 CloudWatch Application Signals 콘솔을 열어봅니다. 하지만 고객 등록을 처리하는 고객 서비스 애플리케이션이 정상이며, SLO도 위반하지 않았다는 걸 확인합니다.

CloudWatch Application Signals 콘솔

Jane은 서비스를 열어 발생할 가능성이 드문 장애 패턴을 조사한 결과, 등록 API에 간헐적인 p99 지연 시간 스파이크가 발생한다는 사실을 발견했습니다.

간헐적인 지연 시간 스파이크

Jane은 지연 시간 차트에서 데이터 포인트를 선택하여 상관관계가 있는 스팬을 확인합니다. 그런 다음, 고객 ID별로 스팬을 그룹화하여 지연 시간 스파이크의 영향을 받는 모든 고객을 확인합니다.

지연 시간 스파이크의 영향을 받는 고객

Jane은 장애 상태와 상관관계가 있는 스팬 중 하나를 선택합니다. 그러면 선택한 트레이스에 대한 트레이스 세부 정보 페이지가 열립니다. 세그먼트 타임라인 섹션으로 스크롤하여 직접 호출 경로를 따라가 보니, 결제 게이트웨이에 대한 직접 호출이 실패하여 고객이 등록하지 못하고 있었다는 사실을 알게 되었습니다.

결제 직접 호출 실패