258
클라우드 네이티브 애플리케이션 디자인 패턴
5.8
관측 가능성 및 모니터링
성공적인 이벤트 주도 아키텍처 구현에서 관측 가능성과 모니터링은 핵심 요소라 할 수 있습니
다. 이벤트 주도 애플리케이션은 그 크기가 커짐에 따라 복잡해지기 마련이고 이벤트가 컴포넌
트를 따라 어떻게 흘러가는지 알아보기 힘들어집니다. 적절한 수준의 관측 가능성과 모니터링
이 없다면 대규모 이벤트 주도 애플리케이션의 동작을 이해하고 문제를 해결하는 것이 사실상
불가능하다고 할 수 있습니다. 특히나 이벤트 주도 클라우드 네이티브 애플리케이션이 서버리
스 컴퓨팅 프레임워크를 사용해서 이벤트를 비동기로 처리하면 클라이언트는 대개 이벤트 처
리가 실패했다는 사실을 알 수 없기 때문에, 더더욱 적절한 수준의 관측 가능성과 모니터링을
제공해야 합니다.
이벤트 주도 아키텍처는 토픽과 큐로 연결되는 마이크로서비스들의 이벤트 처리 연계로 만들
어집니다. 잘못된 이벤트나 네트워크 문제 등으로 이벤트 처리 연계 어느 지점에서나 실패가
발생할 수 있습니다. 그 결과로 이벤트가 버려지고 나머지 실행 연계 부분으로 이벤트가 전달
되지 않습니다. 예를 들어 대출을 처리하는 요청이 접수되고 난 후 신용을 확인하는 과정에서
오류가 발생해서 이벤트가 버려진다면, 사용자 또는 은행 측에서는 애플리케이션 개발 조직이
적절한 관측 가능성 및 모니터링 도구를 제공하지 않는 한 애플리케이션에 어떤 문제가 발생했
는지 알 수 없습니다. 관측 가능성을 통해 어떤 문제가 어디서 왜 생겼는지 파악할 수 있는 ...