Отладка приложений

  • node –debug app.js
  • npm install node-inspector
node-inspector --web-port=5859
Node Inspector v0.7.3
Visit http://127.0.0.1:5859/debug?port=5858 to start debugging.

https://github.com/node-inspector/node-inspector

  • node –debug app.js
  • node –debug-brk app.js - Останавливается на 1 линии кода после запуска

Настраиваем скрипт и запускаем отладчик.

Удаленная отладка nodejs приложения в PhpStorm или WebStorm

cd ~
wget http://www.inlab.de/balance-3.56.tar.gz
tar -xvf balance-3.56.tar.gz
cd balance-3.56
  • закомментировать следующий код в balance.c
sockoptoff = 0; 
#if defined(IPV6_V6ONLY)
  status = setsockopt(srv_socket, IPPROTO_IPV6, IPV6_V6ONLY, (char*) &sockoptoff, sizeof(sockoptoff)); 
  if(status < 0) { 
    syslog(LOG_WARNING,"setsockopt(IPV6_V6ONLY=0) failed"); 
  } 
#endif
  • make
  • make install
  • balance -df 8585 127.0.0.1:5858

На хосте с PhpStorm создать remote-debug конфигурацию: host = адрес удаленного nodejs сервера, port = 8585. Затем выбрать и запустить отладку этой конфигурации, предварительно выставив брейкпоинты, где требуется.

Логирование приложений

  • debug
  • winston - Имеет возможность выводить в указанное храгнилище (файл или БД), также имеет возможность управлять уровнями сообщений
  • NODE_DEBUG = 'http net' - Переменная окружения, В ней указываются модули, которые необходимо логировать. Сами модули анализируют эту переменную и выдают отладочную информацию