-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
🔧refactor코드 수정코드 수정
Description
현재 상황
#201 (comment)
현재 GithubApiErrorDecoder는 GitHub API의 응답 에러만 처리하고 있습니다:
- OAuth 인증 에러 (error, error_description, error_uri)
- GitHub API 에러 (message, documentation_url)
- 예상치 못한 응답 형식
문제점
Feign Client 사용 시 발생할 수 있는 네트워크 레벨의 에러가 처리되지 않고 있습니다:
- Connection refused
- Connection timeout
- DNS resolution failure 등
이러한 에러들은 현재 Feign의 RetryableException으로 변환되어 처리되지 않고 있습니다.
개선 방안
GithubApiErrorDecoder에 네트워크 에러 처리 로직 추가:
catch (RetryableException e) {
// 네트워크 레벨 에러 처리
return new GithubNetworkException("GitHub 서비스와 연결할 수 없습니다", e);
}TODO
- GithubNetworkException 클래스 추가
- GithubApiErrorDecoder 수정
- 관련 테스트 코드 추가
기대효과
- 네트워크 연결 실패 시 명확한 에러 메시지 제공
참고사항
RetryableException은 이름과 달리 대부분 재시도해도 해결되지 않는 근본적인 네트워크 문제를 나타냄
Metadata
Metadata
Assignees
Labels
🔧refactor코드 수정코드 수정