diff --git a/src/main/java/sdung/ongil/domain/manage/stations/Kakao/KakaoGeocodingClient.java b/src/main/java/sdung/ongil/domain/manage/stations/Kakao/KakaoGeocodingClient.java index 2c8e0fe..f09dc7b 100644 --- a/src/main/java/sdung/ongil/domain/manage/stations/Kakao/KakaoGeocodingClient.java +++ b/src/main/java/sdung/ongil/domain/manage/stations/Kakao/KakaoGeocodingClient.java @@ -34,9 +34,8 @@ public Optional geocode(String address) { headers.set("Authorization", "KakaoAK" + restApiKey); HttpEntity entity = new HttpEntity<>(headers); - String rawResponse = restTemplate.exchange(url, HttpMethod.GET, entity, String.class).getBody(); - try { + String rawResponse = restTemplate.exchange(url, HttpMethod.GET, entity, String.class).getBody(); KakaoAddressSearchResponse response = objectMapper.readValue(rawResponse, KakaoAddressSearchResponse.class); @@ -49,8 +48,12 @@ public Optional geocode(String address) { double lng = Double.parseDouble(doc.x()); double lat = Double.parseDouble(doc.y()); return Optional.of(new GeocodeResult(lat, lng)); + } catch (org.springframework.web.client.RestClientResponseException e) { + log.error("카카오 주소 검색 API 호출 실패. address={}, status={}, body={}", + address, e.getStatusCode(), e.getResponseBodyAsString(), e); + return Optional.empty(); } catch (Exception e) { - log.error("카카오 주소 검색 파싱 실패(에러 응답 의심). address={}, rawResponse={}", address, rawResponse, e); + log.error("카카오 주소 검색 파싱 실패(에러 응답 의심). address={}, rawResponse={}", address, e); return Optional.empty(); } }