본문 바로가기

MicroService Architecture/Microservice Design Pattern

로그 분석 중앙화

로그 분석 중앙화 패턴은 다음과 같은 문제점, 솔루션, 해결책의 필요 조건이 있다.

 

문제점

 

보통 애플리케이션을 실행하고 있는 로컬 머신에 애플리케이션 로그 이벤트를 기록하는데, 여러 개의 소규모 서버에 다수의 마이크로서비스 인스턴스를 배포하는 마이크로서비스 아키텍처 기반의 시스템 환경에선 다음과 같은 문제가 있다.

 

- 각 마이크로서비스 인스턴스가 로컬에 로그 파일을 기록하는 상황에서 전체 시스템 환경에서 발생하는 사건을 개괄하려면 어떻게 해야 하는가?

- 문제가 발생한 마이크로서비스 인스턴스를 찾아서 로그 파일에 오류 메시지를 쓰게 하려면 어떻게 해야 하는가?

- 최종 사용자가 문제를 보고했을 때 이와 관련된 로그 메시지를 찾으려면 어떻게 해야 하는가? 문제의 근본 원인이 되는 마이크로서비스 인스턴스를 찾으려면 어떻게 해야 하는가? 이런 문제를 다이어그램으로 표현하면 다음과 같다.

 

해결책

 

로그를 중앙화해 관리하고, 다음과 같은 기능을 갖춘 새 컴포넌트를 추가한다.

- 새 마이크로서비스 인스턴스를 감지해 로그 이벤트를 수집

- 로그 이벤트를 해석해 구조적이고 검색 가능한 형식으로 중앙 데이터베이스에 저장

- 로그 이벤트를 조회 및 분석하기 위한 API와 그래픽 도구를 제공