서버를 배포중, 문제가 생겼을 때 에러를 확인하려면 반드시 log를 확인해야 한다.
하지만 node.js에서 forever로 실행할 경우, 콘솔에 찍은 에러는 확인이 불가능하기 때문에 반드시 따로
로그 파일을 생성해주어야한다.
물론 server.js에서 처리해주어도 되지만, 기존 콘솔에 찍히던 log들을 모두 옮겨주기도 귀찮고 테스트시에는
어차피 콘솔에 찍으며 하기 때문에, 콘솔에 찍히던 log또한 파일에 저장 후 확인 가능하도록 하였다.
sudo forever start -w -o ../out.log -e ../err.log server.js
위와 같이 실행할경우, 기존 출력되던 로그들은 out.log 파일에, 오류 출력 로그들은 err.log에 정상적으로 저장된다.
- -w: 파일 변경을 감지하고 자동으로 재시작.
- -o ../out.log: 표준 출력(stdout)을 로그 파일로 저장한다. ../out.log는 로그 파일의 경로이다. (서버파일이 존재하는 폴더의 상위 폴더)
- -e ../err.log: 오류 출력(stderr)을 로그 파일로 저장한다. ../err.log는 로그 파일의 경로이다. (서버파일이 존재하는 폴더의 상위 폴더)
- server.js: 실행할 Node.js 서버 파일의 이름.
이제 해당 파일들의 위치로 가서 tail 명령어로 로그가 잘 저장되고 있는지 확인해보자.
로그가 잘 저장되는 모습!
'📑Project , 대외활동 > 🐄스마트팜 - Web Page' 카테고리의 다른 글
[스마트팜/Troubleshooting] - Mysql ERROR 1129 (HY000): Host IP ... error 해결하기 (0) | 2023.07.05 |
---|---|
[스마트팜] - NAS 설치 (0) | 2023.06.09 |
[스마트팜] - 공인IP와 사설 IP, 포트 포워딩 (1) | 2023.06.09 |
[스마트팜] - 좌충우돌 첫 외주 (0) | 2023.06.09 |