You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
도메인 코드에서 표준예외 던지기(IllegalArgumentException) vs 커스텀 예외 던지기(InternalServerException)
ㄴ IllegalArgumentException은 정말 우리가 예상치 못한(잡지 못한) 예외에서만 던지자.
ㄴ 우리가 방어 못한 부분이 있어서 예외가 발생한거니, IllegalArgumentException을 던져서 error 레벨 로그를 남기도록 하자. warn 레벨 로그면 문제를 인지하기 어려울 것이다.
도메인 코드 예외 400 vs 500
ㄴ DTO validation에서 원래 걸러져야하는건데 걸러지지 않았으니 서버잘못. 즉, 500이다.
ㄴ 그래도 사용자 입력이 잘못된건데 사용자 입장에서 "서버 내부 오류" 메세지를 받는건 사용자 친화적이지 않은 것 같다. 즉, 400이다.
도메인용 에러 클래스 정의
ㄴ 도메인용 에러 클래스를 정의해, 사용자한테는 400에러를 내려주고 로깅 레벨은 error로 하자.
ㄴ 도메인 안에서도 정말 사용자의 입력이 잘못된게 있고, 서버 오류인 경우가 있는데 이를 다 분류하는 것은 너무 복잡하다.
✨ 세부 내용
위 이슈에서 WARN 로그에 스택 트레이스 출력을 제거했습니다.
하지만 제거를 하니 어느 부분에서 InternalServerException이 발생하였는지 알 수 없습니다.
아래 방법 중 하나를 적용하는 것을 제안합니다.
⏰ 예상 소요 시간
30분
The text was updated successfully, but these errors were encountered: