오늘의 할 일
- 에러가 발생하면 터미널에서도 확인 할 수 있도록 log.error 남기기
- 에러가 발생했을 때 상태코드를 미리 정한 errorcode와 같이 넘기기
에러가 발생하면 터미널에서도 확인 할 수 있도록 log.error 남기기
위 기능 구현에 대하여 CustomException마다 일일이 log.error를 남기는 굉장히 귀찮은 작업이 될 줄 알았으나 생성자에 직접 log.error를 추가해 작업을 매우 빨리 마칠 수 있었다.
기존 코드
if (!foundBoard.getUser().getId().equals(user.getId()) || !user.getRole().equals(UserRoleEnum.ADMIN)) {
log.error("보드를 생성한 사람만 협업자 추방할 수 있습니다.");
throw new CustomException(CustomErrorCode.NOT_YOUR_BOARD);
}
수정한 코드
if (!foundBoard.getUser().getId().equals(user.getId()) || !user.getRole().equals(UserRoleEnum.ADMIN)) {
throw new CustomException(CustomErrorCode.NOT_YOUR_BOARD);
}
// CustomException
public CustomException(CustomErrorCode errorCode) {
super(errorCode.getErrorMessage());
log.error(errorCode.getErrorMessage());
this.errorCode = errorCode;
}
log.error(~~) 를 ExceptionHandler로 옮겼다.