1

サーバー側で隕石アプリケーションをデバッグしようとしています。

環境変数 export NODE_OPTIONS='--debug' を作成しました。

meteor (バージョン 0.7.0.1) コマンドを実行します。ポート 5858 でリッスンしているデバッガーに通知します。

node-inspector (バージョン v0.7.0-2) を起動し、127.0.0.1:8080/debug?port=5858 をポイントしますが、ソース、コンソール、プロンプトの 2 つの文字列しか表示されず、何も書き込めません。 .

コンソールに次のエラーが表示されます:「ページの読み込み中に ws//127.0.0.1:8080/socket.io/1/websocket/Za への接続が中断されました」。

0.0.0.0:8080 を使用した場合も同様です。右側のパネルに、ウォッチ式、コール スタックなどのデバッガーの詳細が表示されますが、ソース リストはまだ空です。

meteor を停止すると、リモート デバッグが終了したと表示されるため、Node-Inspector がリッスンしている必要があります。私は自分が間違っていることを理解できません。

4

1 に答える 1

1

https://groups.google.com/forum/#!topic/meteor-talk/EG8pe7pF3f8をご覧ください

node-inspector を使用してサーバー側のコードをデバッグした経験をいくつか共有したいと思います: 1. Meteor を実行すると、Linux マシンで 2 つのプロセスが生成されます (注: Windows または Mac マシンでは確認していません)

 process1: /usr/lib/meteor/bin/node /usr/lib/meteor/app/meteor/

meteor.js

 process2: /usr/lib/meteor/bin/node /home/paul/codes/bbtest_code/

bbtest02/.meteor/local/build/main.js --キープアライブ

  1. process2 で kill -s USR1 を送信する必要があります

  2. node-inspector を実行すると、サーバー コードが表示されます

最初の試行で、/usr/lib/meteor/bin/meteor にある meteor 起動スクリプトの最後の行を次のように変更します。

exec "$DEV_BUNDLE/bin/node" $NODE_DEBUG "$METEOR" "$@"

コマンドプロンプトで NODE_DEBUG=--debug meteor を実行します。これは -- debug フラグを process1 に置くだけなので、node-inspector には meteor ファイルしか表示されず、コードを見つけることができませんでした。meteor スクリプトで「--debug」フラグを使用できるようにスクリプトを変更する方法について何か提案はありますか? 乾杯、ポール

于 2014-02-10T09:26:52.583 に答える