Skip to content

[refactor/#412] Notification 검증 로직 효율화 및 잠재적 문제 해결, 예외처리 추가#413

Merged
dev2yup merged 2 commits intodevelopfrom
refactor/#412-refac-notification
Apr 30, 2026
Merged

[refactor/#412] Notification 검증 로직 효율화 및 잠재적 문제 해결, 예외처리 추가#413
dev2yup merged 2 commits intodevelopfrom
refactor/#412-refac-notification

Conversation

@dev2yup
Copy link
Copy Markdown
Collaborator

@dev2yup dev2yup commented Apr 26, 2026

📌 연관 이슈

🌱 PR 요약

  • Notification 검증 로직 효율화 및 잠재적 문제 해결, 예외처리 추가
  • 일반 알림(팔로우/댓글/좋아요 등) 프로필 이미지 없으면 기본 이미지 URL(GitHub Secrets) 사용하도록 수정
  • 온도 알림 이미지 URL GitHub Secrets로 받아와서 사용하도록 수정

🛠 작업 내용

  • isAbleToSendNotification 검증 로직 개선
    Early return 패턴으로 변경하여 기존의 무조건적인 DB조회 수정(status가 ACTIVE 아니거나 deviceToken 없으면 DB 조회 자체를 안 함)
    MemberTerm 레코드가 없으면 예외 던지지 않고 false 반환 → 알림 전송만 skip하고 API는 정상 응답

  • sendPushAfterCommit 예외 처리 보강
    FCM 에러 코드(MessagingErrorCode)를 함께 로깅하여 디버깅 정보 강화
    FirebaseMessagingException 외의 예외(SDK 내부 RuntimeException, 네트워크 오류 등)도 catch 하도록 추가

알림 이미지 환경변수 사용하도록 수정

  • 일반 알림(팔로우/댓글/좋아요 등)
    기존: CodiveNotification 엔티티에서 이미지 url이 NotNull이라 프로필 이미지가 없는 경우 예외 발생

    수정:

    1. 원본 profileImageUrl이 있으면 그 값 사용
    2. 없으면 DEFAULT_PROFILE_IMAGE_URL 사용
    3. 그것도 없으면 ""(빈 문자열)
  • 오늘의 온도 알림

    1. TODAY_TEMPERATURE_IMAGE_URL 사용
    2. 없으면 ""
  • 깃허브 시크릿 DEFAULT_PROFILE_IMAGE_URL, TODAY_TEMPERATURE_IMAGE_URL 추가

📸 스크린샷

❗️리뷰어들께

S3 버킷에 icon 폴더 만들어서 이미지 넣어뒀습니다.
URL이 바뀌게 되면 Github Secret의 DEFAULT_PROFILE_IMAGE_URL, TODAY_TEMPERATURE_IMAGE_URL 수정해야합니다.

@sonarqubecloud
Copy link
Copy Markdown

❌ The last analysis has failed.

See analysis details on SonarQube Cloud

@dev2yup dev2yup merged commit 714c779 into develop Apr 30, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[refactor] 알림 발송 (Notification) 로직 및 예외 처리 리팩

1 participant