이 라이브러리는 Spring Boot Starter로, 다음 세 가지 핵심 기능을 제공합니다:
1.1 핵심 기능
1.1.1 의존성 수집
애플리케이션의 컴포넌트(Controller, Service, Repository)와 그들 간의 의존 관계를 자동으로 수집합니다.
1.1.2 TraceID 관리
요청마다 고유한 ID를 부여하여 분산 시스템에서 요청을 추적할 수 있게 합니다.
1.1.3 자동 로깅
모든 메서드 실행을 자동으로 로깅하여 애플리케이션 동작을 상세히 기록합니다.
1.2 프로젝트 구조
a306.dependency_logger_starter/
├── config/
│ └── LoggerAutoConfiguration.java # 자동 설정
├── dependency/
│ ├── DependencyCollector.java # 의존성 수집
│ ├── LayerDetector.java # 계층 감지
│ ├── DatabaseDetector.java # DB 감지
│ └── client/
│ └── DependencyLogSender.java # 서버 전송
└── logging/
├── context/
│ └── MDCContext.java # MDC 관리
├── filter/
│ └── TraceIdFilter.java # TraceID 필터
└── aspect/
└── MethodLoggingAspect.java # 메서드 로깅