5

Rails アプリケーションを WAR にパックするために Warbler を使用しています。JBoss サーバーにデプロイしましたが、動作しているようです。

ただし、Rails で「申し訳ありませんが、問題が発生しました」という古典的な 500 エラーが発生します。

普段はlogs/production.logを見て原因を探っていますが、プロジェクトがWARedなのでアクセスできません。問題は、Rails アプリが震えたときにログがどこに書き込まれるかということです。

4

2 に答える 2

6

WarblerがバンドルするサーブレットコンテナアダプタであるJRuby-Rackは、デフォルトで、javax.servlet.ServletContext#logメソッドを使用してRailsログをサーブレットコンテナにリダイレクトするように設定されています。したがって、ログが表示される正確な場所はサーバー固有です。Tomcatの場合は、catalina.out、GlassFishの場合はserver.logにある必要があります。

それでもログファイルにエラーメッセージが表示されない場合は、エラーを飲み込んでいる途中のどこかにバグがある可能性があります。JRuby-Rackの問題レポートをhttp://kenai.com/jira/browse/JRUBY_RACKで自由に開いてください。

于 2009-07-22T19:02:52.523 に答える
1

この質問はかなり古く、すでに回答されていますが、Tomcat でワーブルしてデプロイされた Sinatra アプリケーションで同様の問題に直面していました。catalina.out (または tomcat ログ フォルダー) は、ログをまったく吐き出していませんでした。最終的に、デプロイされたアプリケーションのWEB-INFフォルダー自体にログが存在することがわかりました。例えば

{TOMCAT_BASE}/webapps/{WEB_APPLICATION_PATH/WEB-INF/log/production.log

これは私にとってかなり長い間謎でした。

于 2012-08-08T12:44:26.783 に答える