기록이 힘이다.

[스프링 핵심 원리 고급편 ] - 로그 추적기 본문

SpringBoot

[스프링 핵심 원리 고급편 ] - 로그 추적기

dev22 2023. 3. 2. 15:05
728x90

애플리케이션이 커지면서 점점 모니터링과 운영이 중요해지는 단계이다. 

기존에는 개발자가 문제가 발생한 다음에 관련 부분을 어렵게 찾아서 로그를 하나하나 직접 만들어 남겼다. 로그를 미리 남겨 둔다면 이런 부분을 손쉽게 찾을 수 있을 것이다. 이 부분을 개선하고 자동화하는 것이 여러분의 미션이다.

 

<<요구사항>>

-모든 public 메서드의 호출과 응답 정보를 로그로 출력

-애플리케이션의 흐름을 변경하면 안됨

   - 로그를 남긴다고 해서 비즈니스 로직의 동작에 영향을 주면 안됨

-메서드 호출에 걸린 시간

-정상 흐름과 예외 흐름 구분

   - 예외 발생시 예외 정보가 남아야 함

-메서드 호출의 깊이 표현

-HTTP 요청을 구분

   - HTTP 요청 단위로 특정 ID를 남겨서 어떤 HTTP 요청에서 시작된 것인지 명확하게 구분이 가능해야 함

   - 트랜잭션 ID(DB 트랜잭션X), 여기서는 하나의 HTTP 요청이 시작해서 끝날 때까지를 하나의 트랜잭션이라 함 

 

**참고**

모니터링 툴을 도입하면 많은 부분이 해결되지만, 지금은 학습이 목적!