Здесь заметки к двум видео - Supervisor и "Отладка...". Nodejs считывает файл модуля один раз, поэтому при отладке надо чистить кэш. Делать это лучше с помощью модуля Supervisor. А для отладки можно использовать внутренний дебаггер, GUI Crome, или настроить IDE. Пробую варианты дебаггера по одноименному видео от И. Кантора.
Debugger Node.js v6.3.1 Documentation
V8 Welcome to the developer documentation forV8. V8 is Google's open source, high performance JavaScript engine. It is written in C++ and is used in Google Chrome, Google's open source browser.
V8 github is Google's open source high-performance JavaScript engine, written in C++ and used in Google Chrome, the open source browser from Google. It implements ECMAScript as specified in ECMA-262, and runs on Windows XP or later, Mac OS X 10.5+, and Linux systems that use IA-32, ARM or MIPS processors. V8 can run standalone, or can be embedded into any C++ application.
Debugging Protocol
Ставим глобально и далее используем вместо "node" "supervisor"¶
npm i -g supervisor
Следит за всеми файлами в текущей папке !!! А не только за ... настройки посмотреть подробнее. Так что надо бы исключать node_modules
Подводные камни (2:50) - Новые файлы не определяет, если их не реквайрят (перезапустить), bcrk.xbnm node_modules
А дебаггер уже стоит, но нужно выполнить два условия¶
// в любом месте кода script.js
debugger;
//Запуск скрипта
node debug script.js
Node inspector подключает GUI Chrome¶
npm i -g node-inspector
Эта штука использует движок v8 со всеми опциями GUI отладчика.
Приемы работы¶
// в любом месте кода script.js
debagger;
теперь --debug
node --debug script.js
node-inspector
Чтобы сразу же войти в режим отладки (без debagger;), удобно при отлове ошибок.
node --debug-brk=5858 script.js
Логирование, модули debug и winston¶
npm i debug
var debug = require('debug')('server')
Для другого модуля - другую метку
var debug = require('debug')('server:request')
В код можно добавать строки вида
debug('Unit request', req.method, req.url);
Для вывода сообщений в консоль нужно присвоить переменной окружения DEBUG имя файла
DEBUG=server, server:request
А потом запустить файл
node server.js
Когда надо бы посмотреть, что делается в gulp - файлах¶
Встает вопрос о том, как запустить дебаггер
F:\stradorusite\gulp>node --debug .\node_modules\gulp\bin\gulp.js styles
Debugger listening on port 5858
[14:52:00] Using gulpfile F:\stradorusite\gulp\gulpfile.js
[14:52:00] Starting 'styles'...
{ src: 'frontend/styles/main.styl', taskName: 'styles' }
[14:52:04] Finished 'styles' after 4.19 s
Посты чуть ниже также могут вас заинтересовать
Комментариев нет:
Отправить комментарий