[node.js]node –inspect-wait

リモートホストで動くnode.jsのアプリ(index.js)をPCのchromeからデバッグできた。

# node --inspect-wait {ソース名}

で実行しchrome待ちになってるけど、Chromeの「chrome://inspect/」 のページの

Discover network targetsの【Configure】ボタンを押して

{リモートホストのIPアドレス}:9229

を追記しても、

Remote Target #{リモートホストのIPアドレス}

に index.js が表示されない。

man node でオプションを調べてみると

--inspect-wait=[host:]port
        Activate inspector on host:port and wait for debugger to be attached.

[host:]port ってIPアドレスやポートを指定できるんだ。

# node --inspect-wait={自分のIPアドレス}:{chromeと通信するポート番号} {ソース名}

で、chromeのDevToolsで、ファイル選択でindex.jsを選ぶと普通にデバッグできた。

但し、これはリモートホスト側でポート開放必須でinspectも何でも出来る様なので、

SSLでポートフォワードする方法の方がよさそう。

> ssh -L 9229:localhost:9229 {ユーザ名}@{リモートホストのIPアドレス}
$ node --inspect-wait index.js

これでChromeでデバッグしながら、ポートを解放せずにsshでソース修正ができるから結構使い道がありそうだし、chrome操作さけなら「うっかりソースのバグを修正していまう」コトも無い(ハズ

to 管理者:ポート開放して

from 管理者:無理

ってありそうだし(笑

最近のWindowsはkey-genできるしsshできるし便利になったね。(大笑

あ、BATファイルにすればいいなぁ

cmd /C ssh -L 9229:localhost:9229 {ユーザ名}@{リモートホストのIPアドレス}

あれ無限ループ?

ファイル名が悪かった(再起してた

cmd /C ssh -L 9229:localhost:9229 {ユーザ名}@{リモートホストのIPアドレス}

これでポートも繋がりすぐ node –inspect-wait index.js できる。

メデタシメデタシ

ps.2025/4/11

大元ネタはココらしい。




コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA