Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feat] 인사이트 통계 - 인사이트를 보고 나를 팔로우 한 사람 #321

Merged
merged 11 commits into from
May 21, 2023

Conversation

heoboseong7
Copy link
Collaborator

관련 Issue

작업 내용

  • 인사이트를 통한 팔로우 내역을 저장
  • 인사이트를 통한 팔로우 수 조회 API
  • statistics 모듈 logback 설정 추가(되는지 모름)

Figma 링크

image

@heoboseong7 heoboseong7 self-assigned this May 14, 2023
@github-actions
Copy link

테스트통과 🤖

Copy link
Collaborator

@Youhoseong Youhoseong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍🏽

FollowFromInsightId id = FollowFromInsightId.of(dto.getFollowerId(), dto.getFolloweeId(), dto.getInsightId());
if(followFromInsightRepository.existsById(id)) {
log.info("[PCDS::addFollowFromInsight]followerId {} followeeId {} insightId {} already exists", dto.getFollowerId(), dto.getFolloweeId(), dto.getInsightId());
return null;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

null을 던지는 방식보단 예외던지는건어때요?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

현재 상태에서 예외를 던지게 되면, 호출하는 측의 catch에 걸려서 nack를 보내게 돼요
하지만 큐의 메세지는 정상적으로 consume된 것이기 때문에, ack로 처리해야 해요
이렇게 하려면, 예외 catch -> 이 부분의 에러인지 확인 -> 결과에 따라 ack or nack로 처리 과정이 추가로 필요해요
그래서 예외 핸들링이 복잡해질 것 같아서 null로 처리했어요.

Copy link
Collaborator

@Youhoseong Youhoseong May 21, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

엇 저는 에러 핸들링 추가를 생각하긴했어요.
nack/ack를 상황에 따라 판단하는건 addFollowFromInsight(...)를 사용하는 클라이언트의 역할이지
addFollowFromInsight의 역할이라고 보기 힘들 것 같아서요.
(사용하는 클라이언트의 에러 핸들링이 복잡할까봐 응답을 다르게 내려주는 것도 마찬가지의 영역이라고 생각.)

이미 값이 존재한다면 일관성 있게 이미 존재하는 FollowFromInsight를 응답하는 것도 방법인거같구요 ㅎㅎ

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

에러 핸들링으로 수정했습니다~

<configuration>
<springProperty name = "SENTRY_DSN" source = "env.sentry-dsn"/>
<springProperty name = "LOGSTASH_DSN" source = "env.logstash-dsn"/>
<springProperty name = "SERVICE_NAME" source="spring.service.name" />
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

서비스네임 환경변수 들어가있겠죠?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR 끝나고 배포하기 전에 젠킨스 스크립트에서 추가할게요

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

keewe-api와 같은 deploy.sh 사용해서 별도 추가는 안해줘도 될 것 같네요

Copy link
Collaborator

@Youhoseong Youhoseong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍🏽

@github-actions
Copy link

테스트통과 🤖

@github-actions
Copy link

테스트통과 🤖

@github-actions
Copy link

테스트통과 🤖

@github-actions
Copy link

테스트통과 🤖

@Youhoseong
Copy link
Collaborator

이번 PR에 꽤많은 대화가있었던거같네요
고생하셨어요!! 최고 👍

@heoboseong7 heoboseong7 merged commit e31e9f2 into main May 21, 2023
@heoboseong7 heoboseong7 deleted the issue-#320 branch May 21, 2023 05:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feat] 인사이트 통계 - 나를 팔로우 한 사람
2 participants