개인 프로젝트에서 무료 또는 오픈소스 모니터링 도구를 직접 설정해본 경험을 서술
대학교 4학년 때 팀 프로젝트로 만든 웹 서비스를 실제로 배포했었습니다. 그때 처음으로 서버가 갑자기 죽는 상황을 맞닥뜨렸습니다. 오전에 잘 돌아가던 서버가 점심시간에 응답이 없어지는 일이 발생했습니다. 처음에는 그냥 재시작하고 넘어갔지만, 이틀 연속 같은 일이 반복되니 원인을 파악하는 도구가 필요하다는 생각이 들었습니다.
그때 처음으로 Prometheus와 Grafana를 설정해보았습니다. 공식 문서가 생각보다 방대해서 처음 이틀은 설정만 하다 끝났습니다. 실패도 많았는데, 메트릭 수집 설정에서 포트를 잘못 지정하여 데이터가 아예 들어오지 않는 상황을 세 시간 뒤에야 발견했습니다. 결국 메모리 사용량이 특정 시간대에 급격히 올라가는 패턴을 발견하였고, 트래픽이 아니라 메모리 누수가 문제임을 확인하였습니다.
그 이후로는 임계값 초과 시 이메일 알림도 설정하였습니다. 완벽한 모니터링 시스템은 아니었지만, 이슈가 생기기 전에 신호를 볼 수 있다는 것이 이렇게 다른 경험인지 그때 처음 알았습니다. 이 경험을 통해 모니터링은 장애 이후가 아니라 이전부터 시작해야 한다는 것을 느꼈습니다.