11

npm start はアプリを正常に起動しますが、実行すると:

pm2 start app.js

私は得る:

[PM2] Spawning PM2 daemon
[PM2] PM2 Successfully daemonized
[PM2] Process app.js launched
┌──────────┬────┬──────┬──────┬────────┬─────────┬────────┬─────────────┬──────────┐
│ App name │ id │ mode │ pid  │ status │ restart │ uptime │ memory      │ watching │
├──────────┼────┼──────┼──────┼────────┼─────────┼────────┼─────────────┼──────────┤
│ app      │ 0  │ fork │ 4681 │ online │ 0       │ 0s     │ 11.508 MB   │ disabled │
└──────────┴────┴──────┴──────┴────────┴─────────┴────────┴─────────────┴──────────┘
 Use `pm2 show <id|name>` to get more details about an app

私が得るログで:

[PM2] Starting streaming logs for [all] process
PM2: 2015-06-04 17:12:37: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:37: Starting execution sequence in -fork mode- for app name:app id:0
PM2: 2015-06-04 17:12:37: App name:app id:0 online
PM2: 2015-06-04 17:12:37: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:37: Starting execution sequence in -fork mode- for app name:app id:0
PM2: 2015-06-04 17:12:37: App name:app id:0 online
PM2: 2015-06-04 17:12:37: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:37: Starting execution sequence in -fork mode- for app name:app id:0
PM2: 2015-06-04 17:12:37: App name:app id:0 online
PM2: 2015-06-04 17:12:38: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:38: Starting execution sequence in -fork mode- for app name:app id:0
PM2: 2015-06-04 17:12:38: App name:app id:0 online
PM2: 2015-06-04 17:12:38: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:38: Starting execution sequence in -fork mode- for app name:app id:0
PM2: 2015-06-04 17:12:38: App name:app id:0 online
PM2: 2015-06-04 17:12:39: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:39: Starting execution sequence in -fork mode- for app name:app id:0
PM2: 2015-06-04 17:12:39: App name:app id:0 online
PM2: 2015-06-04 17:12:39: App name:app id:0 exited with code 0
PM2: 2015-06-04 17:12:39: Script /home/user/app/app.js had too many unstable restarts (15). Stopped. "errored"

ここに私のpackage.jsonがあります:

  1 {
  2   "name": "app",
  3   "version": "0.0.0",
  4   "private": true,
  5   "scripts": {
  6     "start": "node ./bin/www"
  7   },
  8   "dependencies": {
  9     "body-parser": "~1.12.4",
 10     "cookie-parser": "~1.3.5",
 11     "debug": "~2.2.0",
 12     "express": "~4.12.4",
 13     "jade": "~1.9.2",
 14     "morgan": "~1.5.3",
 15     "serve-favicon": "~2.2.1",
 16     "stylus": "0.42.3"
 17   }
 18 }

ノード バージョン: v0.10.38 pm2 バージョン: 0.12.15

これをデバッグするにはどうすればよいですか?なぜ失敗するのかわかりません。他に確認する必要がある場所はありますか?私の app.js ファイル?

4

1 に答える 1

12

まず、それがnode ./bin/www正しく機能することを確認してみます。

これを理解するための「公式の」方法が何であるかはわかりませんが、これはうまくいくはず
です。単にファイルに書き込むか、何か他のことをする、キャッチされていない例外ハンドラーをコードに入れることができます。

process.on('uncaughtException', function(err) {
    console.log('Caught exception: ' + err);
    throw err;
});

編集: コメントに基づいて、問題が発生している理由app.jsは、アプリケーションの実際のエントリポイントではないためです。本当のエントリーポイントは./bin/www

したがって、次のようにするのではなく、PM2 にそのファイルを開始するように指示する必要がありますapp.js
pm2 start ./bin/www

于 2015-06-04T18:40:45.153 に答える