전일 평균가 갱신 이슈

신경연·2023년 5월 24일
0

Project_디붕

목록 보기
8/8
post-thumbnail

전일 평균가 갱신 이슈

전일 평균가는 디붕이네 공장 사이트의 최초 화면에 보여지는 데이터입니다.

Cron Schedule 기능을 통해 매일 자정 시각에 갱신하는 형태로 설계하여 진행하였습니다. 이 갱신이 제대로 안되는 문제가 있었습니다. 해결했던 과정에 대해 이야기 해보고자 합니다.

1. 코드

문제의 Schedule이 걸려있는 평균가 갱신 코드입니다. 이제 하나씩 테스트 해보기 시작했습니다.

1) 코드 자체에 대한 의심

당연히 저의 코드에 대한 의심부터 시작하게 되었습니다. 그래서 테스트의 편의성을 위해 Schedule이 아닌 Controller를 통해 수행하도록 Api를 하나 만들었습니다. 그런데 수행이 되어버렸습니다. 오류를 뱉도록 만들었던 Api를 통해 기능이 수행이 되었습니다. 이 때의 흔적으로 혼자만 수정 시간이 다른 데이터가 하나 남아있습니다. 다음 의심은 Schedule로 이동하게 되었습니다.

2) Schedule

사실 Schedule로 의심이 옮겨지긴 했지만 의아하긴 했습니다. 여담이지만 가격 검색에 Open Api를 쓰게되면서 Selenium을 안쓰게 되었고, 대신에 Schedule 및 Selenium 연습할겸 써보겠다고 진행중이던 부트캠프 자동 출첵 매크로를 만들어 잘 돌리고 있었습니다. 바로 Application.log 파일을 열어보았습니다. Schedule은 잘 동작하고 있었습니다.

여기까지 와서 요약을 해보면 Api를 수동으로 수행을 했더니 잘 되는데, Schedule을 통해 진행하면 안되고 있는 상황이었습니다. 그런데 검색을 해도 UTC 시간 관련 이슈 외에는 딱히 나오는 자료가 없었습니다. UTC는 이미 고려해둔 상태이고, 이상한 시간에 수행되는 문제가 아니라 아예 안되는 문제였기에 이 문제는 아니었습니다. 그래서 일단 Schedule을 수정해서 매분(minute) 수행하는 것으로 바꿔서 실험을 해봤습니다. 문제는 또 잘되었습니다.

2. 해결 및 최종

여기까지 오니 혹시나 OpenApi Server에서 전일 평균가 데이터 집계에 시간이 걸려 제공할 데이터가 없어서 오류가 나는 것인가 하는 생각이 들었습니다. 그래서 AM 00:01 에 하던 Schedule을 AM 00:05로 옮겼습니다. 그렇게 다소 힘이 빠지지만 해결이 되었습니다.
어쨌든 최종적으로는 AM 00:05도 아주 가끔씩 오류가 나고 있어, AM 00:10으로 옮기려고 하고 있습니다.

profile
반갑습니다

0개의 댓글