[Node.js] PM2 실시간으로 업데이트 되지 않는 버그? (pm2 start 명령어)

랸나·2023년 4월 9일
0

pm2 버그?(인줄알았던,,, feat.바보)

오늘 Node.js Express 활용 실습을 하다가, pm2라는 매우 유용한 프로세스 관리 도구를 설치해서 사용해보았다.

나는 Node.js를 수정했을 때, 잘 적용되었는지 로컬에서 확인할 때마다 수정된 파일을 저장하고, ctrl + c를 눌러 서버를 종료한 뒤 다시 서버를 실행시켜 수정사항을 확인했었다.

그런데 PM2를 사용하면 서버를 무중단시키고 수정 사항을 반영할 수 있다! 생산성 올라가는 소리 들리시나요..?

https://www.npmjs.com/package/pm2

1. 설치 방법

npm install pm2 -g : 전역 설치
만약 권한이 없다는 오류가 뜬다면, sudo install pm2 -g로 설치해보자.

2. 사용 방법

  • 시작 : pm2 start main.js(파일명)를 통해서 시작할 수 있다. 시작할때는 디렉토리가 이 파일이 있는 곳인지 확인해야한다.
  • 종료: pm2 stop main.js(파일명) 말 그대로 종료다.

3. 외 유용한 명령어

pm2 log : 실행 로그들을 확인하고, 어플리케이션 정보 확인 가능 (오류날때, 실행 되지 않을때 명령어 사용해서 오류 확인 가능)

4. 버그??!?!??!?

그런데 이상하게 아무리 저장해도 실시간으로 수정 사항이 반영되지 않았다. 여러번 껐다 켰는데도 반영되지 않아서 이상하다고 생각했는데, 아래 명령어를 사용하면 반영이 됐다.

pm2 restart main.js(파일명)

아니 근데 이 명령어를 매번 수행해야하면 서버를 껐다켰다 하는거랑 뭐가 다른거지? 라고 생각하며 어이없어 하고 있었는데, 사실 실시간!!!으로 보려면 아래 명령어를 쳐야했다.

pm2 start main.js파일명 --watch

두둥... 말 그대로 --watch가 들어가야 실시간으로 작동하는거였다. (공식문서 제대로 읽고 쓸걸;)

바보짓을 통해서 교훈을 얻었다. 문물을 완벽하게 사용하기 위해선 설명서를 자세하게 읽어봐야한다는 것을........

그냥 나처럼 버그인줄 알고 pm2 버그..등을 검색해본 사람이 있을까봐... 남겨둔다. (그리고 반성하기 위한 게시물이기도 함..ㅎㅎ 이걸 몰라서 한시간동안 고생했다... 막힐땐 무적권 공식문서!!!!!!!!!!!!!!!!!!!!)

https://www.npmjs.com/package/pm2
https://www.npmjs.com/package/pm2
https://www.npmjs.com/package/pm2
https://www.npmjs.com/package/pm2
https://www.npmjs.com/package/pm2
https://www.npmjs.com/package/pm2
(반성과 분노의 공식문서 페이지 첨부)

profile
백엔드개발자

0개의 댓글