← 전체 글로 돌아가기

웹 개발

개인 프로젝트에서 로그 로테이션 설정하기

서버 로그가 계속 쌓이다 보면 디스크가 가득 찬다. 처음부터 로그 로테이션을 제대로 해 두면 나중에 신경 쓸 일이 줄어든다.

개인이 서버를 운영하다 보면, 느낌으로 고쳐 보기보다는 먼저 지금 상태를 정확히 파악해야 한다. 확인 시간이 오래 걸릴 것 같지만, 체계적으로 하면 더 빠르다.

운영 환경의 상태를 먼저 파악하기

서버 쪽 문제는 화면만 보고 판단하면 놓치는 게 많다. 로그, 응답, 설정 중 하나를 증거로 잡자.

현재 상태를 기록해 두기

다음에 같은 문제가 반복되지 않도록, 지금 뭐가 잘못됐는지 명확히 남겨 두자.

  • 먼저 볼 값: 로그
  • 같이 비교할 값: 정상 상태와 비교
  • 남겨둘 기록: 명령어 출력, 에러 코드, 수정한 설정

기본 확인 명령어들

아래 세 명령어로 대부분의 상황을 파악할 수 있다:

sudo ss -lntp
df -h
sudo journalctl -n 80

첫 번째는 포트가 뭐가 열려 있는지, 두 번째는 디스크 사용량, 세 번째는 최근 80줄의 시스템 로그다.

수정 순서를 정하기

운영 환경의 흐름을 먼저 끊어서 본다. 특히 권한이 애매하면, 다른 부분을 고쳐도 결과가 안 바뀐다.

권한을 확인할 때는 다음을 함께 적어 두면 원인 추적이 쉬워진다:

  • 누가 프로세스를 실행하는가?
  • 로그 파일의 소유자는 누구인가?
  • 디렉토리 권한이 맞는가?

확인해야 할 것들

다음 순서로 체크하면, 같은 실수를 반복하지 않는다:

  1. 원래 증상이 같은 조건에서 다시 나는지 확인한다.
  2. 로그나 응답에서 바뀐 부분을 한 줄로 설명해 본다.
  3. 공개 화면, 빌드 결과, 실제 요청 중 하나로 마지막 확인을 한다.

해결 자체보다 기록이 중요하다

해결하는 것도 중요하지만, 어떤 값이 달라졌는지 설명할 수 있는 상태가 더 중요하다. 관련 기록을 남겨 두면, 다음에 비슷한 문제가 나올 때 훨씬 빠르게 대응할 수 있다.