공부한 보람 느끼기

Today I Learned 날짜 2024년 1월 10일 수요일 내용 빨리 빨리 처리를 못하니 업무가 쌓인다. 똑띠 한번에 처리하자. 리뷰 처리 오늘 또 실수를 했다. 리뷰가 작성되면, 유저는 이름, 성 , 이메일 등을 입력해야 한다. 이때 입력한 이메일로 DB에서 고객정보를 탐색해 이름과 성을 덮어쓰고 저장했다. 어제 이 부분을, 덮어쓰지 않고 저장하도록 코드를 변경했다. 확인해보니 이름이 저장되지 않고 비어있었다. 작성된 리뷰를 저장할 때 사용하는 클래스는 여러가지가 있다. 기본 클래스를 바탕으로, 스토어 리뷰와 주문한 고객의 리뷰(검증된 리뷰), 주문하지 않은 고객의 리뷰(검증되지 않은 리뷰), 관리자의 리뷰가 모두 대동소이하다. 각 클래스는 비슷한 메서드를 필요에 맞게 각각 정의하고 있다. ...

2024년 1월 10일 · 2 분 · 배준수

ECS에서 스크립트 실행하기

Today I Learned 날짜 2024년 1월 9일 화요일 내용 이거하랴 저거하랴 정신 없는 하루였다. 내일 별일 없겠지.. Weekly Review Report email 보완 어제 전송되었어야 할 메일들이 전송되지 않았다. 해당 Task가 등록된 service의 로그를 확인해보았는데, 두가지 오류를 발견했다 invalid HTTP request received 라는 오류가 있었는데, 내가 새로운 Task 예약 규칙을 생성하기 전부터 찍혀오던 오류였다. 따라서 내가 추가한 것과는 무관한 로그라고 판단했다. ResponseValidationError : UTC 시간 기준으로 어제 오전 10시에 한번 찍혀있는 로그였다. 이전에 비슷한 오류가 발생하지 않아 내 Task가 작동하지 않은 원인일 거라고 추정했지만 석연치 않은 부분도 있었다. 내 Task는 매주 월요일 오전 0시 부터 1시간 간격으로 24번 실행되야 한다. 따라서 코드가 잘못되어 에러가 발생했으면 오전 1시 이전에 발생했어야 맞다. 혹시 설정이 잘못되었나 싶어 이것저것 살펴보다가 내가 만든 예약 Task의 Task definition이 개정된 버전이 지정되있지 않아 잘못된 Task definition이 걸려있었다. 수정하려고 설정에 들어갔을 때는 제대로 설정되어 있는데.. 버그인가 싶어 제대로 고쳐주고 내일 다시 실행되도록 했다. 내일은 제발 되었으면.. ...

2024년 1월 9일 · 3 분 · 배준수

월요일 월요일은 힘들

Today I Learned 날짜 2024년 1월 8일 월요일 내용 이것 저것 중구난방으로 처리하느라 이도저도 아닌 하루가 된 느낌이다. Weekly Review Report Email 지난주에 Task로 등록해두었지만, 메일이 발송되지 않았다. Log를 확인해보니 Invalid HTTP request received. 라고 뜬다. 정확히 내가 설정한 Task로 인한 것인지 아직 확실히 확인하지 못했다. 내일 조금 더 본격적으로 확인해서 무엇이 문제인지 찾아볼 예정. Localization 이전에도 느꼈지만 우리 서비스의 Widget 렌더링 로직은 참 어렵다. 우리 서비스는 리뷰 작성 페이지와 위젯의 언어를 바꿀 수 있는데, 이를 Localization이라 부른다. 이번에 포르투갈어, 독일어, 중국어를 추가해줘야 했다. ...

2024년 1월 8일 · 2 분 · 배준수

별개의 DB 관계 파악

Today I Learned 날짜 2023년 12월 28일 목요일 내용 매 주, shop의 review에 관해 발생한 변화들을 담은 메일을 발송해야 한다. 어제 가진 의문들에 대해 집중적으로 고민한 덕에 많이 진행됐다. 현재 발송하는 shop의 이름 각 메일에는 수신하는 shop에 대한 정보가 담겨야 한다. 그렇다면 그 샵의 정보를 통해 조회하여 담아야 하는데 어떻게 알 수 있을까에 대해 고민됐다. 조금만 고민해보니 정말 쓸데 없는 생각이었다. 모든 shop에 보내야하니 그냥 각 shop에 대해 필요한 정보를 다 가져와야 했다. ...

2023년 12월 28일 · 3 분 · 배준수

Amazon ECS 알아보기

Today I Learned 날짜 2023년 12월 27일 수요일 내용 Verification Email은 테스트서버에서도 이상이 없었다. 코드가 힘들기 보단 이해가 힘든 Task였음. Review Report Email 주 1회, 한 주간 리뷰의 추가 상황에 대해 메일을 보내줘야 한다. 가장 우선 파악해야할 것은 세 가지였다. 어떻게 정기적으로 메일을 보낼 것인가? 메일 형식은 어디에 어떻게 설정할 것인가? 메일에 데이터를 어떻게 담을 것인가? 우선 반복된 동작은 cron과 cronjob에서 처리한 다는 것은 알고 있었다. 문제는 이 코드를 누가 언제 실행하는지 였는데… 결국 ECS였다. 이에 관한 설명인 밑에서 하고, ECS에서는 특정 이벤트나 시간을 기준으로 Task를 계획할 수 있다. ...

2023년 12월 27일 · 2 분 · 배준수