0

Heroku とは byapp[web.1]と by の意味<main>:48ですか?

私のコンピューターではなく、Heroku でのみ発生するクラッシュがあります。クラッシュの原因となっている正確な行を特定しようとしています。これらはログです

2012-10-08T21:31:49+00:00 app[web.1]: <main>:48:in `method_missing': wrong number of arguments (1 for 2) (ArgumentError)
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb:265:in `start'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb:137:in `start'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/lib/thin/server.rb:104:in `block in initialize'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/bin/rackup:4:in `<top (required)>'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/bin/rackup:19:in `load'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/lib/thin/server.rb:104:in `==='
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/bin/rackup:19:in `<main>'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/lib/thin/server.rb:102:in `initialize'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/thin.rb:9:in `new'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/thin.rb:9:in `run'
2012-10-08T21:31:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/lib/thin/server.rb:102:in `each'
2012-10-08T21:31:50+00:00 heroku[web.1]: Process exited with status 1
2012-10-08T21:31:50+00:00 heroku[web.1]: State changed from starting to crashed
2012-10-08T21:31:52+00:00 heroku[router]: Error H10 (App crashed) -> GET placeboxy.herokuapp.com/ dyno= queue= wait= service= status=503 bytes=

クラッシュは自分のコードまたは Web サーバー Thin またはその他の場所で発生していますか?

編集Procfile を変更して、Heroku でサーバー ユニコーンを実行すると、クラッシュが停止しました。pumaでもエラーはありません。何か案は?Thin に障害がありますか?

4

1 に答える 1

3

これapp[web.1]は、ログを発行しているプロセスをマークするために heroku がログに追加するタグです。すべてのログが中央の場所に収集されるため、単一のプロセスをフィルタリングしてプロセス ログを解析できます。

その<main>:48:部分は、例外のために実行が停止したファイル/行を意味します。この場合 ( <main>) は、実行されるメイン スクリプトです。おそらく、そこにエラーは見つかりません。コードの失敗している部分をバックトレースで検索し、外部ライブラリでもコア ルビーでもないものを探す必要があります。あなたが示すバックトレースは役に立ちません。通常、エラーはスタックトレースではるかに低くなります。

于 2012-10-08T23:00:20.937 に答える