
필자의 라이브 프론트 서버에서 애플리케이션의 로그가 현재까지 계속 쌓여 하드디스크(HDD)의 용량이 출시 초기부터 현재까지 조금씩 증가하는 현상을 인지하게 되었다. 필자는 최근 PM2를 이용하여 서버의 프로세스를 관리하는데, 1년 넘게 로그가 누적되어 HDD 용량이 지속적으로 증가하는 것이었다. 이 문제를 해결하기 위해 PM2의 Logrotate 모듈을 도입하여, 로그를 효율적으로 관리하고 용량 증가 문제를 개선하기로 했다.
로그의 누적
HDD 용량 부족
로그 관리 부재
PM2는 기본적으로 로그 관리 기능을 제공하지 않지만, PM2 Logrotate 모듈을 사용하면 로그를 효율적으로 관리할 수 있다. 이를 통해 로그를 일정 기준에 따라 분리, 압축, 삭제할 수 있다.
pm2 install pm2-logrotate # npm install 이 아닌 pm2 의 모듈이므로 pm2 install 로 설치를 해주어야 한다.
pm2의 module list 에 pm2-logrotate가 설치된 것을 확인 할 수 있다.Logrotate 설정 확인 및 수정
설치 후, 기본 설정을 확인하고 필요에 따라 수정한다.
pm2 show pm2-logrotate
주요 설정 변경
설정을 변경하려면 다음 명령어를 사용한다:
pm2 set pm2-logrotate:rotateInterval "0 0 * * *" # 로그를 하루 단위로 분리.
pm2 set pm2-logrotate:retain 7 # 파일이 7개 이상 넘어가면 오래된 파일을 지우고 최신 파일을 쌓음.
pm2 set pm2-logrotate:max_size 10M # 로그 파일 크기가 10MB 이상이면 분리.
Logrotate 적용 확인
pm2 conf

pm2-logrotate 설정을 확인 할 수 있다.
HDD 용량 안정화:
로그 관리 자동화:
서버 안정성 확보: