← 전체 글로 돌아가기

웹 개발

배포 후 로그를 1분만 지켜보면 문제를 조기에 잡을 수 있다

배포 직후 1분은 문제가 드러나는 골든타임이다. 그 짧은 시간을 지켜보는 것만으로 복구 시간을 대폭 줄일 수 있다.

배포가 완료되면 기대와 불안감이 섞인다. 모든 게 잘 작동할까 싶으면서도, 빨리 다른 일로 넘어가고 싶다. 하지만 이 시점이 중요하다.

배포 직후 1분의 중요성

배포가 끝나면 서버는 새로운 코드를 실행하기 시작한다. 이 순간 여러 문제가 동시에 터질 수 있다.

  • 환경 변수 누락으로 인한 서비스 크래시
  • 데이터베이스 연결 문제
  • 의존성 패키지 누락
  • 잘못된 설정으로 인한 권한 에러

이 모든 문제들은 배포 후 수초 내에 로그에 나타난다.

확인해야 할 로그들

# 최근 로그를 실시간으로 확인
journalctl -u service-name -f

# 또는 Docker 컨테이너 로그
docker logs -f container-name

어떤 로그든, 에러 레벨의 메시지가 보이면 즉시 배포를 롤백해야 한다. 5분 뒤에 발견하는 것보다 1분 뒤에 발견하는 것이 훨씬 낫다.

로그에서 봐야 할 신호들

  • Connection refused: 데이터베이스나 외부 서비스에 연결할 수 없음
  • Module not found: 의존성이 제대로 설치되지 않음
  • Permission denied: 파일 접근 권한 문제
  • Out of memory: 메모리 부족

롤백 계획을 미리 세우기

문제가 발견되면 빠르게 대응해야 한다. 미리 이전 버전으로 돌아가는 절차를 정해두는 게 좋다.

# 예: 이전 버전의 컨테이너 이미지로 롤백
docker service update --image=app:v1 service-name

배포는 한 번으로 끝이 아니다. 그 직후 1분이 배포의 성공을 결정하는 순간이다. 화면에서 눈을 떼지 말고 로그를 지켜보자.