Как да започнете отстраняване на грешки в приложения NodeJS с ndb

Изображение на дамска птица от pixabay

NodeJs беше освободен преди почти 9 години. Процесът на отстраняване на грешки по подразбиране на NodeJs (прочетете Node.js) е доста тромав. Вероятно вече сте наясно с необходимостта да добавите --inspect към скрипта на възела с инспектор на възела. Зависи и от Chrome. След това трябва да погледнете правилната връзка за уеб сокет, която е твърда, и да отстраните грешки, като използвате грешки във възлите на Chrome. За да бъда честен, това е болка във врата.

И накрая, Google chromelabs пусна ndb, за който казват, че е „подобрен опит за отстраняване на грешки за Node.js, активиран от Chrome DevTools“. Ndb е предимство при отстраняване на грешки в приложението Nodejs.

Ще покажа стъпка по стъпка процес за отстраняване на грешки на nodejs приложение с ndb. По-долу можете да видите ndb в действие. Нека сега запретнем ръкави и да започнем:

Предварителни

По-долу са някои предпоставки, преди да започнете:

  1. Имате инсталирани nodejs във вашата система (не-мозъчен, но все пак си заслужава да се спомене)
  2. Имате общи познания за работа със скриптове на възел и работа с приложения на nodejs.
  3. Имате предварително опит за отстраняване на грешки с nodejs или друг език.

За отстраняване на грешки в nodejs приложения, вместо само още един скрипт ще използвам пълно приложение nodejs express. Това е приложение с отворен код, което използвах за демонстрация при тестване на nodejs приложения.

Отстраняване на грешки nodejs експресно приложение като демонстрация

Използвам моя API за валута с отворен код за това стъпка по стъпка ръководство за отстраняване на грешки в приложението на nodejs. Той е изграден с помощта на рамката ExpressJS. Можете също да разгледате работещото приложение, хоствано в Zeit Now, за да видите примерния курс USD към AUD за 2019–01–10.

Идеята на приложението е проста. Ако степента на конверсия е налична в базата данни, тя ще я извлече от базата данни. Ако не, ще го извлече от друг API и ще го изпрати обратно на потребителя, като също така ще запази скоростта в базата данни едновременно (async) за по-късна употреба.

Можете да клонирате приложението от github и да стартирате npm install, за да го подготвите за отстраняване на грешки. Това е много просто приложение с голяма част от логиката във файла exchangeRates.js. Той също има мока тестове, тъй като беше демонстрация за тестване на приложение за nodejs.

1. Започнете, инсталирайте ndb

Инсталирането на ndb е много лесно. Всичко, което трябва да направите, за да започнете да отстранявате грешки в приложението си nodejs, е да инсталирате ndb. Бих препоръчал да го инсталирате глобално с:

# с npm
npm инсталирайте -g ndb
# с прежда
прежда глобална добавете ndb

Можете също така да го инсталирате и използвате локално за приложение, ако искате. Едно нещо, което трябваше да поправя, беше да получа най-новата версия на Chrome, тъй като видях някои проблеми с разрешенията.

2. Стартирайте приложението с ndb (не възел или nodemon)

За отстраняване на грешки в nodejs приложения с ndb, можете директно да стартирате скрипта на приложението nodejs с ndb, а не с възел. Например, ако сте били свикнали да правите node index.js или nodemon index.js в разработката. За да отстраните грешката в приложението си, можете да стартирате:

ndb index.js

Забележете, че не е нужно да поставяте никакви - проверете, така че опитът е много по-гладък.

Не е необходимо да помните различен порт или да отидете на хромирани devtools и да отворите различен прозорец на инспектора, за да отстраните грешката. Такова облекчение!

ndb отваря екран като долу, когато правите ndb. или ndb index.js:

Моля, добавете точка на прекъсване на ред 46. Тъй като стартирате приложението с ndb, то ще работи в режим на отстраняване на грешки и ще спре на точката на прекъсване, както по-долу, когато натиснете http: // localhost: 8080 / api / convert / USD / AUD / 2019- 01-01 на браузъра. Поставих точка на прекъсване на exchangeRates.js като 46 на екрана по-долу:

ndb ви позволява да стартирате всеки скрипт за отстраняване на грешки. Например, мога да пусна ndb npm start и той ще използва nodemon run. Това означава, че мога да отстраня грешката в приложението, докато променя кода, който е страхотен.

Като пример може да се стартира с ndb npm start за отстраняване на грешки в това nodejs express приложение.

Можете също да отстраните грешката на вашия тест с команда като ndb npm test.

3. Нека отстраним грешки в някакъв код

Тъй като отстраняването на грешки работи, мога да поставя повече точки на почивка или да пропускам кода с моя скорост и удобство.

Съществените преки пътища са F10 за преминаване на функцията и F11 за преминаване към функция.

Обичайният работен процес за отстраняване на грешки, предполагам, че сте запознати. По-долу преминах към линия 52:

Още отстраняване на грешки

Както при всеки друг грешка, с ndb можете:

  1. Добавете часовници
  2. Проверете следата на стека на обажданията
  3. Проверете процеса

Разделът за конзолата също е полезен, ако искате да въведете бърз код на nodejs в контекста.

Прочетете повече за това, което можете да направите с ndb в официалния readme. По-долу е екранна снимка на полезната конзола:

Заключение (TL; DR)

Отстраняването на грешки на всяко nodejs приложение с ndb е по-добро изживяване за разработчици. За да отстраните грешката в приложението API за валута API nodejs express с ndb, изпълнете следните команди, при положение че имате възел> 8 инсталиран:

  1. npm инсталирайте -g ndb
  2. git клонинг [имейл защитени]: geshan / Currency-api.git
  3. CD валута-api
  4. npm инсталиране
  5. ndb npm старт
  6. След като се отвори дебъгерът ndb, добавете точка на прекъсване в ред 46 на src / exchangeRates.js
  7. След това отворете http: // localhost: 8080 / api / convert / USD / AUD / 2019-01-01 в браузъра
  8. Сега като приложението трябва да спре на точката на прекъсване, насладете се! и продължете отстраняването на грешки.

Ако работи за това приложение, можете да отстраните грешката на всяко ваше приложение на nodejs с този подход.

Добре дошли в новия начин за отстраняване на грешки в nodejs приложения, който е независим от браузъра и много по-гладък от преживяването по подразбиране. Засилете вашата програма за отстраняване на грешки в nodejs.

Надявам се този пост да ви е помогнал да отстраните грешката в приложението си за nodejs по-добре. Ако имате други неща за споделяне относно отстраняване на грешки в nodejs приложения или по-добро използване на ndb, моля, коментирайте по-долу!

Ако сте стигнали дотук, моля, оставете ми няколко „клепки“ :).

Благодаря за четенето!

Първоначално публикуван на geshan.com.np.