[javascript] Node.js 애플리케이션을 어떻게 디버깅합니까?

Node.js 서버 애플리케이션을 어떻게 디버깅합니까?

지금은 주로 다음과 같은 print 문으로 경고 디버깅 을 사용 하고 있습니다.

sys.puts(sys.inspect(someVariable));

더 나은 디버그 방법이 있어야합니다. Chrome 에 명령 줄 디버거가 있다는 것을 알고 있습니다. 이 디버거는 Node.js에서도 사용할 수 있습니까?



답변

노드 인스펙터 가 하루를 절약 할 수 있습니다! WebSocket을 지원하는 모든 브라우저에서 사용하십시오 . 중단 점, 프로파일 러, 라이브 코딩 등 … 정말 훌륭합니다.

다음과 같이 설치하십시오.

npm install -g node-inspector

그런 다음 다음을 실행하십시오.

node-debug app.js


답변

디버깅

프로파일 링

  1. node --prof ./app.js
  2. node --prof-process ./the-generated-log-file

힙 덤프

화염 사진

트레이싱

벌채 반출

디버깅 정보를 출력하는 라이브러리

스택 추적 정보를 향상시키는 라이브러리

벤치마킹

다른

유산

이것들은 작동하는데 더 이상 유지되지 않거나 더 이상 최신 노드 버전에 적용되지 않습니다.


답변

V8의 구글의 일환으로 발표 디버거 크롬 개발자 도구는 디버그 Node.js를 스크립트로 사용할 수 있습니다. 이것이 어떻게 작동하는지에 대한 자세한 설명은 Node.js GitHub 위키 에서 찾을 수 있습니다 .


답변

Node에는 버전 6.3 부터 자체 GUI 디버거가 내장되어 있습니다 (Chrome의 DevTools 사용)

노드 내장 GUI 디버거

인스펙터 플래그를 전달하면 인스펙터의 URL이 제공됩니다.

node --inspect server.js

--inspect-brk대신 전달하여 첫 번째 줄을 끊을 수도 있습니다 .


답변

Node.js 버전 0.3.4+에는 디버깅 지원 기능이 내장되어 있습니다.

node debug script.js

매뉴얼 : http://nodejs.org/api/debugger.html


답변

디버깅을 위해 Visual Studio Code 를 선택했습니다. 도구 나npm install물건을 설치하는 오버 헤드가 없습니다. package.json에서 앱의 시작 지점을 설정하면 VSCode가 솔루션 내에 구성 파일을 자동으로 만듭니다. Atom과 같은 편집기가 빌드되는Electron을 기반으로합니다.

VS Code는 VS, Eclipse 등과 같은 다른 IDE에서와 비슷한 디버깅 경험을 제공합니다.

여기에 이미지 설명을 입력하십시오
여기에 이미지 설명을 입력하십시오


답변

나는 개인적으로 사용하는 JetBrains의 WebStorm 이 유일한 자바 스크립트 IDE있어 나는 모두 프론트 엔드와 백엔드 자바 스크립트에 좋은 곳입니다있는 발견 한 것이다.

여러 OS에서 작동하며 Node.js 디버깅 기능이 내장되어 있습니다 (다른 많은 것들도 포함되어 있음) ( http://www.jetbrains.com/webstorm/features/index.html ).

내 유일한 ‘문제’/ wishlist 항목 아르 있었다 :

  1. Windows보다 Mac에서 더 많은 리소스가 부족한 것 같습니다 버전 6에서는 더 이상 문제가되지 않습니다.
  2. Sublime Text 2 와 같이 Snippet을 지원하면 좋을 것입니다. ‘fun’을 입력하고 ‘tab’을 탭하여 기능을 넣으면 입니다. 아래 @WickyNilliams 의견을 참조하십시오-라이브 템플릿을 사용하면 스 니펫 지원도 있습니다.