Node.js の実行とデバッグ
WebStorm は、Node.js アプリケーションの実行とデバッグをサポートします。 WebStorm から起動したアプリケーションのデバッグに加えて、すでに実行中のアプリケーションへのアタッチも可能です。
始める前に
設定 | プラグイン ページ、タブ インストール済み で、必須の Node.js および JavaScript Debugger プラグインが有効になっていることを確認してください。 詳細については、 プラグインの管理を参照してください。
Node.js アプリケーションを実行する
WebStorm は、 Node.js タイプの実行構成に従って Node.js アプリケーションを実行します。 WebStorm はこの構成を使って、 Node.js アプリケーションと一緒にデバッガーを起動することもできます。
Node.js 実行 / デバッグ構成を作成する
に進みます。 または、ツールバーの 実行 ウィジェットから 実行構成の編集 を選択します。

開いた 実行構成の編集 ダイアログで、ツールバーの 追加 ボタン (
) をクリックし、リストから Node.js を選択します。 Run/Debug Configuration: Node.js ダイアログが開きます。
使用する Node.js ランタイムを指定します。
プロジェクト エイリアスを選択した場合、WebStorm は JavaScript Runtime ページの ノードランタイム フィールドにあるプロジェクトのデフォルトインタープリターを自動的に使用します。 ほとんどの場合、WebStorm はプロジェクトのデフォルトランタイムを検出し、自動的にフィールドに入力します。
別の構成済みのローカルインタープリターまたはリモートインタープリターを選択するか、
をクリックして新しいインタープリターを構成することもできます。
詳細については、「リモート Node.js ランタイムの構成」、「ローカル Node.js ランタイムの構成」、「Linux の Windows サブシステムで Node.js を使用する 」を参照してください。
ファイル フィールドで、それを開始するアプリケーションのメインファイルへのパスを指定します(たとえば、 Express(英語) アプリケーションの場合は bin/www )。
オプション:
Node.js の起動をカスタマイズする Node パラメーター を指定します。 例: 実験的な Node.js 機能を有効にするか、別のオプションを渡すことができます。 詳細については、 Node.js 公式 Web サイト(英語)を参照してください。
アプリケーションパラメーター フィールドに、 process.argv(英語) 配列を介して起動時にアプリケーションに渡される Node.js 固有の引数を指定します。
ブラウザーでアプリケーションを自動的に開くには、起動前のタスクを設定します。
をクリックして 起動前 領域を展開し、
をクリックして、リストから Web ブラウザーを起動 を選択します。 開いたダイアログで、アプリケーションの開始ページの URL(Express アプリケーションの場合は
localhost:3000など)と使用するブラウザーを指定します。
アプリケーションの実行
上で説明したように実行 / デバッグ構成を作成するを選択するか、既存のものを変更してダイアログで 実行 をクリックします。
あるいは、メインツールバーのリストから新しく作成した実行構成を選択し、
をクリックします。

アプリケーションが起動し、 Run ツールウィンドウが開いてアプリケーションの出力が表示されます。
アプリケーションで morgan(英語) などのログツールを使用していて、このツールがログをファイルに書き込む場合、これらのログは 実行 ツールウィンドウの コンソール タブで確認できます。
Node.js アプリケーションの実行時にログを管理する
上記のように Node.js 実行 / デバッグ構成を作成し、 ログ タブに移動します。
利用可能なログファイル(存在する場合)を一覧表示する コンソールで表示するログファイル フィールドの横にある
をクリックします。
表示される ログファイルのエイリアスを編集 ダイアログで、ログエントリのリストに表示するエイリアス名を入力し、ログファイルの場所を指定します。 このパターンがカバーするすべてのファイルを表示するか、最後のパターンのみを表示するかを選択します。
新しいログファイルがリストに追加される Node.js 実行 / デバッグ構成 ダイアログに戻るには、 OK をクリックします。 その横にある アクティブ チェックボックスを選択します。 前のコンテンツをスキップするには、 内容のスキップ チェックボックスを選択します。
オプション:
プロセスコンソール 出力をログファイルに保存できるようにするには、 コンソール出力をファイルに保存する チェックボックスをオンにして、ファイルの場所を指定します。
プロセスコンソール をいつ表示するかを選択します。
Node.js アプリケーションをデバッグする
WebStorm を使うと、Node.js アプリケーションのデバッグが容易になります。 ブレークポイントを JavaScript または TypeScript コードの中に置くと、 debugger および console.log() ステートメントが不要になります。 コードを調べたり、バグの場所を理解するのに役立つ多くのことができます。 デバッグ ツールウィンドウでは、コールスタックと現在の状態の変数を表示し、エディターで式を評価し、コードをステップ実行できます。
デバッグセッションは次の2つの方法で開始できます:
Node.js 実行 / デバッグ構成を使用して、アプリケーションとともにデバッガーを開始します。
すでに実行中のアプリケーションにデバッガーを接続します。 この場合、アプリケーションはすでに デバッグモードで実行されており、WebStorm は実行中のプロセスに接続します。
WebStorm は
--inspect、--inspect-brk、および現在は非推奨の--debugフラグを認識するため、どのアプリケーションにもデバッグ用にアクセスできます。実行中のアプリケーションをデバッグするには、 Node.js/Chrome への接続構成を使用します。
WebStorm では、 Vagrant ボックス、 Docker コンテナー 、または さまざまな転送プロトコルや SSH でアクセスできるリモートホストで実行されている Node.js アプリケーションをデバッグすることもできます。
コンピューター上の Node.js アプリケーションと一緒にデバッガーを起動する

必要に応じて、コード内に ブレークポイントを設定します。
上記の説明に従って 、Node.js 実行 / デバッグ構成を作成します。
ブラウザーでアプリケーションを自動的に開くには、起動前のタスクを設定します。
をクリックして 起動前 領域を展開し、
をクリックして、リストから Web ブラウザーを起動 を選択します。 開いたダイアログで、アプリケーションの開始ページの URL(Express アプリケーションの場合は
localhost:3000など)と使用するブラウザーを指定します。
ツールバーの 実行 ウィジェットリストから、新しく作成した Node.js 構成を選択し、その横にある
をクリックします。

デバッグツールウィンドウが開きます。
ブレークポイントを使用してコードの実行をトリガーする手順を実行します。 例: アプリケーションの開始ページからブラウザー内の別のページに移動します。
デバッグ ツールウィンドウのコントロールが有効になっている WebStorm に切り替えます。 デバッグセッションに進み ます - ブレークポイントをステップスルーし、フレームを切り替え、値をその場で変更し、 中断されたプログラムを調べ、式を 評価し、 ウォッチを設定します。
実行中の Node.js アプリケーションをデバッグする
WebStorm を使うと、すでに開発モードで実行されているアプリケーション、つまり --inspect または --inspect -brk フラグで起動されたアプリケーションをデバッグできます。 デバッグセッションは Node.js/Chrome への接続構成を通じて開始され、 Chrome デバッグプロトコル(英語)を使用します。
実行またはデバッグツールウィンドウまたは組み込みのターミナルからデバッガーを起動する
アプリケーションが --inspect または --inspect-brk フラグで開始された場合、組み込みの ターミナル から、 実行 ツールウィンドウから、 デバッグ ツールウィンドウからデバッグセッションを開始できます。

必要に応じて ブレークポイントを設定します。
アプリケーションを
--inspectまたは--inspect-brkフラグ付きで実行します。 それにはいくつかの方法があります。例えば:package.json で、
--inspectまたは--inspect -brkフラグが付いたスクリプトの横のガターにあるをクリックし、 「<script name>」を実行; を選択します。 詳細については、 スクリプト実行 を参照してください。

埋め込まれた ターミナル (Alt+F12 )を開き、次のように入力します。
node --inspect-brk <path to the starting page of your application relative to the project root>
ターミナル、 実行 ツールウィンドウ、または デバッグ ツールウィンドウの コンソール タブに情報メッセージ
Debugger listening <host>:<port>が表示され、デフォルトのポートは9229です。 デバッグを開始するには、 Ctrl+Shift を押しながらリンクをクリックします。WebStorm は自動生成された Node.js/Chrome への接続構成でデバッグセッションを開始します。 ブレークポイントを使用してコードの実行をトリガーする手順を実行します。 例: アプリケーションの開始ページからブラウザー内の別のページに移動します。
実行 / デバッグ構成を介して実行中のアプリにデバッガーをアタッチする
上記のように、
--inspectまたは--inspect-brkフラグを使用してアプリケーションを実行します。必要に応じて ブレークポイントを設定します。
メインメニューの に移動し、開いた 構成の編集 ダイアログで
をクリックして、リストから Node.js/Chrome への接続 を選択します。

Run/Debug Configuration: Attach to Node.js/Chrome ダイアログが開きます。
対象アプリケーションが実行されているホストと、接続先の Node.js プロセスを開始するときに
--inspectまたは--inspect-brkに渡されるポートを指定します。
ターミナル ツールウィンドウまたは実行中のアプリケーションを制御している Run ツールウィンドウ の情報メッセージ
Debugger listening <host>:<port>からポート番号をコピーしてください。
ツールバーの 実行 ウィジェットリストから、新しく作成した Node.js/Chrome への接続 構成を選択し、その横にある
をクリックします。 デバッグツールウィンドウが開きます。
ブレークポイントでコードをトリガするアクションを実行します。 デバッグセッションの制御が WebStorm に戻ります。
WebStorm に切り替えます。 デバッグ ツールウィンドウで、 ブレークポイントをステップスルーし、フレームを切り替え、値をオンザフライで変更し、 中断されたプログラムを調べ、式を 評価し、 ウォッチを設定します。
nodemon を使用する Node.js アプリケーションをデバッグする
WebStorm の組み込みデバッガーは、実行中の Node.js プロセスに自動的に再接続できます。 これにより、コードが更新されると Node.js プロセスが自動的に再ロードされる、 nodemon ユーティリティ(英語)を使用する Node.js アプリケーションをデバッグできるようになります。
このようなアプリケーションをデバッグするには、(--inspect または --inspect-brk フラグを使用して) デバッグモードでアプリケーションを開始し、 自動的に再接続する オプションをオンにした Node.js/Chrome へのアタッチデバッグ構成を使用してアプリケーションに接続する必要があります。
nodemon をインストールする
組み込み ターミナル (Alt+F12 )で、
npm install --save-dev nodemonまたはyarn add nodemon --devと入力して、nodemon を開発依存関係としてインストールします。
デバッグモードで nodemon を使用してアプリケーションを起動する
次の
npm debugスクリプトを作成して実行します。"debug": "nodemon --inspect <path_to_the_file_that_starts_your_application>詳細については、 スクリプトの実行とデバッグを参照してください。
または、 上記のように Node.js 実行 / デバッグ構成を介して
inspectフラグを渡します。
アプリケーションのデバッグ
必要に応じて、コードに ブレークポイントを設定します。
実行中の Node.js アプリケーションのデバッグの説明に従って新しい Node.js/Chrome へのアタッチ 構成を作成し、 自動的に再接続する チェックボックスを選択します。

通常、デバッガーがリッスンしているデフォルトポートなので、
9229の構成でポートを変更する必要はありません。 ただし、デバッグモードでアプリを実行したときに記録されるメッセージで、どのポートが使われているかを再確認できます。
ツールバーの 実行 ウィジェットリストから、新しく作成した Node.js/Chrome への接続 構成を選択し、その横にある
をクリックします。 デバッガーは、WebStorm でコード中に設定したブレークポイントで停止します。
これで、コードに変更を加えて Ctrl+S として保存するたびに、nodemon はアプリケーションを自動的に再ロードし、デバッガーは再起動されたプロセスに自動的に再アタッチします。