0

pm2 で Sails アプリを起動しようとしていますが、次のエラーが発生しました。

pm2 start app.js --name myapp -i 2

pm2 logs

[myapp-1 (out) 2014-05-25T13:38:51] info:    Sails              <|
[myapp-1 (out) 2014-05-25T13:38:51] info:    v0.10.0-rc7         |\
[myapp-1 (out) 2014-05-25T13:38:51] info:                       /|.\
[myapp-1 (out) 2014-05-25T13:38:51] info:                      / || \
[myapp-1 (out) 2014-05-25T13:38:51] info:                    ,'  |'  \
[myapp-1 (out) 2014-05-25T13:38:51] info:                 .-'.-==|/_--'
[myapp-1 (out) 2014-05-25T13:38:51] 
[myapp-1 (err) 2014-05-25T13:38:51] debug: Environment : development
[myapp-1 (err) 2014-05-25T13:38:51] debug: Port        : 1338
[myapp-1 (err) 2014-05-25T13:38:51] debug: --------------------------------------------------------
[myapp-1 (err) 2014-05-25T13:38:51] TypeError: Object #<Object> has no method 'addAsyncListener'
[myapp-1 (err) 2014-05-25T13:38:51]   at Server._listen2 (net.js:1095:18)
[myapp-1 (err) 2014-05-25T13:38:51]   at cb (net.js:1139:10)
[myapp-1 (err) 2014-05-25T13:38:51]   at rr (cluster.js:552:5)
[myapp-1 (err) 2014-05-25T13:38:51]   at Worker.<anonymous> (cluster.js:484:9)
[myapp-1 (err) 2014-05-25T13:38:51]   at process.<anonymous> (cluster.js:611:8)
[myapp-1 (err) 2014-05-25T13:38:51]   at process.EventEmitter.emit (events.js:123:20)
[myapp-1 (err) 2014-05-25T13:38:51]   at handleMessage (child_process.js:318:10)
[myapp-1 (err) 2014-05-25T13:38:51]   at Pipe.channel.onread (child_process.js:346:11)

Sails バージョン: 0.10.0-rc7
pm2 バージョン:0.8.6

また、環境とポートの設定方法がわかりません。で試しまし--node-args="--prod"たが、効果がありませんでした。

モジュールを永遠に試してみましたが、正常に動作します。

これを修正する方法を知っている人はいますか?
ありがとうございました

編集
どうやらnode.jsのバージョンに問題があります。
私はいくつかのテストを行い、問題を pm2 リポジトリに報告しました: https://github.com/Unitech/pm2/issues/491
ニュースはここで更新します。

4

3 に答える 3

3

addAsyncListenerエラーについてはわかりませんが、環境変数は正常に機能するはずです。テストでこれを確認しました:

$ NODE_ENV=production pm2 start app.js

ログ:

[app-1 (out) 2014-05-25T15:27:04] 本番環境で

于 2014-05-25T20:29:09.180 に答える
3

これを修正する方法を知っている人はいますか?

次のように pm2 を起動します。

pm2 start app.json

app.json は次のとおりです。

{
  "apps": [{

    "name": "app",
    "script": "/full/path/to/app.js",
    "env": {
      "NODE_ENV": "production"
    }
  }]
}

帆: v.0.11.0、pm2: v.0.12.7

于 2015-03-04T13:52:38.540 に答える