Эта статья посвящена простому, но надежному инструменту, который можно использовать для отладки кода, написанного на Node.js. Инструмент проверки Nodejs — это инструмент отладки, доступный как расширение Chrome в инструментах разработки. Этот инструмент можно использовать для прохождения потока кода, устанавливая точки останова в определенных строках кода. Когда мы запускаем все приложение, отладчик заставляет приложение останавливаться в точках, где мы ставим эти точки останова. Используя этот метод, можно проанализировать ввод и вывод, которые обрабатываются в этих точках, и выяснить, где что-то идет не так. Инспектор Node.js упрощает задачу, разбивая большой код на части, устанавливая точки останова и отлаживая полученные модули кода по отдельности.

  1. Включите флаг --inspect в команду узла, которую вы используете для запуска приложения. Делая это, вы включаете режим отладки.
node --inspect publish.js

2. В chrome devtools вы найдете зеленоватый символ node.js, который при нажатии перенаправляет на консоль отладки. Это место, где вы можете открывать свой код, ставить точки останова и отлаживать его.

3. Однажды после установки этих точек останова, когда вы пытаетесь повторно запустить приложение, приложение останавливается всякий раз, когда управление переходит к строке кода, где есть точка останова. Это помогает проверять входные данные, переданные классу/функции, или значение, хранящееся в переменной, или выходные данные, возвращаемые классом/функцией.

Существует много других сторонних инструментов для отладки, но этот инструмент очень полезен для упрощения отладки и понимания потока данных в коде. Еще одним интересным преимуществом этого инструмента является то, что можно отлаживать как внешний, так и внутренний код с минимальными усилиями. Вдобавок к этому можно сделать моментальный снимок распределения памяти в приложении, используя параметр Heap Snapshot, доступный в инструменте.

Разве это не круто? 😎

Документация к вышеуказанному инструменту: https://nodejs.org/en/docs/guides/debugging-getting-started/