Skip to content

Conversation

@1117mg
Copy link
Member

@1117mg 1117mg commented Aug 9, 2025

📌 PR 제목

📋 작업 내용

  • 디스코드 서버에러 알림봇 설정
  • GlobalExceptionHandler에서 Exception.class 예외 발생시 알림 발생
  • 회원가입 로그 알림 (prod 환경에서만)

✅ 체크리스트

  • 테스트를 완료했나요?
  • 코드 컨벤션을 지켰나요?
  • 관련 문서를 업데이트 했나요?

@1117mg 1117mg self-assigned this Aug 9, 2025
@1117mg 1117mg added the enhancement New feature or request label Aug 9, 2025
@1117mg 1117mg linked an issue Aug 9, 2025 that may be closed by this pull request
1 task
@claude
Copy link

claude bot commented Aug 9, 2025

Claude finished @1117mg's task —— View job


코드 리뷰 완료

구현 내용 요약

Discord 알림봇 기능이 잘 구현되었습니다. GlobalExceptionHandler에서 Exception.class 예외 발생 시 Discord로 알림을 전송하고, 회원가입 시에는 prod 환경에서만 알림을 발송하는 기능이 추가되었습니다. 비동기 처리와 webhook URL 검증, 민감 정보 마스킹 등 기본적인 보안 고려사항도 잘 반영되어 있습니다.

코드 리뷰 의견

주요 이슈:

GlobalExceptionHandler.java:148 - [issue:] log.error와 Discord 알림이 중복 발생 - Exception 발생 시 로그와 Discord 알림 모두 전송되어 중복 노이즈 발생 가능성이 있으므로, 심각도에 따른 알림 조건 추가 검토 필요

DiscordService.java:132-134 - [suggestion:] 정규식 패턴이 너무 단순함 - password=mypass123 같은 경우 마스킹되지 않을 수 있으므로, 경계 문자(\b) 추가하여 (?i)\\b(password|token|secret|key)\\s*[=:]\\s*\\S+ 형태로 개선 권장

SignUpEventListener.java:29 - [suggestion:] 하드코딩된 JPQL 쿼리 사용 - User 엔티티명이 변경되면 런타임 오류 발생 가능하므로, UserRepository에서 count() 메서드로 변경하거나 @query 어노테이션 사용 권장

AsyncConfig.java:23-24 - [suggestion:] RejectedExecutionHandler 로직이 단순함 - 알림 실패 시 재시도나 대체 처리 없이 단순 로그만 출력하므로, 중요한 에러 알림 누락 가능성 고려 필요

기타 개선점:

DiscordService.java:51-54 - [suggestion:] null 체크가 매번 실행됨 - @ConditionalOnProperty로 빈 생성 자체를 제어했으므로 메서드 내부 null 체크 로직 제거 가능

Todo List

  • 변경된 파일들을 읽고 분석하여 코드 리뷰 수행
  • Discord 알림 기능 구현 내용 검토
  • 보안 취약점 및 버그 확인
  • 성능 이슈 및 코드 품질 검토
  • 최종 리뷰 의견 작성 및 제출

@claude
Copy link

claude bot commented Aug 9, 2025

Claude finished @1117mg's task —— View job


코드 리뷰 완료

구현 내용 요약

Discord 알림봇 기능이 구현되어 서버 에러와 회원가입 이벤트를 Discord로 전송합니다. GlobalExceptionHandler에서 모든 예외를 캐치하여 알림을 발송하고, 회원가입 시에는 prod 환경에서만 알림을 보냅니다. 비동기 처리와 기본적인 보안 고려사항이 적용되어 있으나 몇 가지 개선이 필요한 부분이 있습니다.

코드 리뷰

이슈:

GlobalExceptionHandler.java:148 - [issue:] log.error와 Discord 알림 중복 발송으로 노이즈 발생 - 모든 예외에 대해 로그와 알림이 중복으로 전송되어 불필요한 알림량 증가

DiscordService.java:130-132 - [issue:] 정규식 패턴이 부정확함 - password=mypassword123 같은 경우 word boundary가 없어 부분 매칭이 실패할 수 있으므로 \\b(password|token|secret|key)\\s*[=:]\\s*\\S+ 형태로 수정 필요

제안:

SignUpEventListener.java:26 - [suggestion:] 매번 count() 쿼리 실행으로 성능 문제 - 회원가입할 때마다 전체 테이블 스캔이 발생하므로 캐시나 증분 카운터 사용 검토 필요

AsyncConfig.java:23-24 - [suggestion:] RejectedExecutionHandler가 단순 로깅만 함 - 중요한 에러 알림이 누락될 수 있으므로 대체 처리나 재시도 로직 추가 검토 필요

기타:

DiscordService.java:51-54 - [suggestion:] @ConditionalOnProperty로 빈 생성을 제어했으므로 메서드 내부 null 체크 불필요

Todo List

  • 변경된 파일들 분석
  • Discord 알림 기능 구현 검토
  • 보안 및 성능 이슈 확인
  • 최종 리뷰 의견 작성

@1117mg 1117mg closed this Aug 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] 서버 에러로그 디스코드 알림

2 participants