개요
service에서 주문 상태 변경 시, 504 error 발생에 대한 원인 추적 및 issue 수정 과정 입니다.
문제점
- 주문 상태 변경 log insight에서 error message 확인 필요
- 504 error로, DB CPU 과부화 의심 확인 필요
해결점
1. 주문 상태 변경 log insight에서 error message 확인 필요
- 주문 상태 변경은 eks에 실행 중이며, aws > cloudwatch > log insight 아래 log group에서 확인했습니다.
/eks/logs/*/*/*
- query에 error message를 filter option을 이용하여 아래처럼 검색하였습니다.
fields @timestamp, @message
| filter @message like 'ERROR'
| sort @timestamp desc
| limit 20
- error message를 확인하였지만, 400 error가 다수 발생하는 것을 확인하였습니다. 하지만 issue 문의는 504 error 였다.
2. DB CPU 확인 필요
- aws > RDS에서 해당 serve의 DB CPU 사용률을 확인하였습니다. error가 발생한 시점 다른 개발자의 작업으로 CPU 99% 사용 현황을 확인하여 해당 issue로 error 발생한 점 확인되었습니다.
- CPU 사용률이 안정적으로 돌아오자 해당 issue는 없어졌습니다.
배운점
- aws > cloudwatch > log insgight에서 시간 기준으로 desc 정렬 기본 값으로 되어있는 것을 알았다. (sort @timestamp desc) 시간 기준이 아니라 다른 값을 기준으로 할 때 사용해야겠다는 점을 배웠습니다.
- error 문의를 받으면 우선 filter에 error 조건을 걸고 좀 더 detail한 조건을 맞춰들어가면서 문의 error를 파악해야겠다는 점을 배웠습니다.
- aws > RDS > CPU 사용률을 graph로 확인 할 수 있는 점을 배웠습니다.