미니옵빠의 code stubs
Node.js 8 inspector 본문
Node.js 8 버전에 inspector 기능이 추가되었습니다. (사실은 7부터)
이제는 디버깅을 더 쉽게 할 수 있습니다.
https://nodejs.org/en/docs/inspector/
node 실행 시 --inspect 옵션만 주면 됩니다.
사용법
1. node --inspect xxx.js 실행. 아래 로그 확인
Debugger listening on ws://127.0.0.1:9229/29ff9e93-e137-49b8-ab6e-25b2c924c225
For help see https://nodejs.org/en/docs/inspector
The server is running at https://localhost:9000/
2. Chrome 브라우저 > chrome://inspect/#devices
아래처럼 Remote Target 이 바로 잡힙니다. inspect 클릭
3. Chrome 개발자 도구가 짜잔!
- CPU / Memory Profiling 가능
- Sources 탭에서 breakpoint 설정, 디버깅 가능
기타 참고
- 원격지 서버 디버깅 시엔, node --inspect=0.0.0.0:9229 xxx.js 처럼 host 설정 필요
- 보안 이슈로 기본값이 127.0.0.1로 되어있음
- Chrome inspect 탭 > Discover network targets > Configure > target IP/port 추가
- nodemon 도 사용 가능
- nodemon --inspect xxx.js