Conversation
로깅 서비스의 Gradle 설정 파일(.gitignore, .gitattributes, build.gradle, settings.gradle, gradle-wrapper 등)을 추가하여 기본 프로젝트 환경을 구성했습니다.
로깅 모듈을 main-server에 추가하고 build.gradle, settings.gradle, AppConfig에 관련 의존성과 설정을 반영함.
- 컨트롤러 실행 시 로그를 기록하는 AOP 클래스 `LoggingAop` 추가 - 로그 출력을 위한 어노테이션 `@ControllerLogging` 추가 - 컨트롤러 호출 메타데이터를 담는 `LogBody` 클래스 추가 - 결과 상태를 표현하는 `ResultStatus` enum 추가 - `EventController`에 `@ControllerLogging` 어노테이션 적용
- @ControllerLogging 어노테이션을 이용한 AOP 기반 로깅 기능 추가 - 각 Controller에 @ControllerLogging 어노테이션 적용 - 로그 데이터에 사용자 정보, IP 주소, 호출 결과 등을 포함하도록 개선 - logging 모듈 jar 빌드 설정 추가 및 main-server와 queue-server에 의존성 연동
- @BusinessLogging 어노테이션 추가 및 주요 비즈니스 메서드 로깅 기능 구현 - LogBody 클래스 수정: 메서드명, 클래스명 추가 - @ControllerLogging 어노테이션 수정: description 필드 추가 - UserController 주요 API 메서드에 @BusinessLogging 어노테이션 적용 - LoggingAop 리팩토링: 컨트롤러 로깅, 비즈니스 로깅 분리 및 로깅 개선
|
어떤 정보를 수집해야 될지 잘 모르겠습니다. |
|
@omegafrog 스프링 부트의 log를 수집하는게 맞나요? 수집 목적이 어떻게 되나요? |
|
운영상으로 중요한 정보나 주요 비즈니스 로직 실행을 남겨서 시스템 복구나 이런데 사용할 수 있게 하려고 합니다 |
필수 로그 목록 (User 도메인)1. UserService.java회원가입 관련 로그
로그인 관련 로그
로그아웃 관련 로그
회원 탈퇴 관련 로그
비밀번호 관리 로그
2. UserSchedulerService.java계정 잠금 관리 로그
비밀번호 만료 확인 로그
3. UserEmailService.java이메일 발송 로그
4. EmailService.java이메일 인증 관련 로그
5. UserController.java로그인 API 로그
로그아웃 API 로그
회원 탈퇴 API 로그
|
알림 기능별 로그 정보(Notification)1. 알림 생성 관련 정보클래스: NotificationService 2. 알림 전송 상태 정보클래스: NotificationEventService 3. SSE 연결 관련 정보클래스: NotificationEmitterService 4. 알림 읽음 상태 변경클래스: NotificationService
5. 알림 삭제 관련 정보클래스: NotificationService 6. 성능 지표 관련 정보클래스: NotificationService |
🔎 작업 내용
컨트롤러 단에서 요청한 유저의 role, userId, ip addr를 수집합니다.
✏️ 세부 설명 (선택)
유저의 role, userId, ip addr 수집
📷 스크린샷 (선택)
없음
✅ PR Checklist
PR이 다음 요구 사항을 충족하는지 확인하세요.