2011-08-09 8 views
4

プロダクションモードで実行中にPlayアプリケーションは、500エラーが発生したときにそうように、それはエラーをログに記録します。ログのスタックトレース

[TIMESTAMP]: @[errorid] 
[TIMESTAMP]: Internal Server Error (500) for request GET /path-to-request 
[TIMESTAMP]: Execution exception (In /app/controllers/Controller.java around line 55) 

ませスタックトレースが含まれていません。スタックトレースが記録されるようにPlayを設定することは可能ですか?

ボーナスに関する質問:ログのスタックトレースのサイズを、たとえば、ログが暴走するのを防ぐために20行に制限することはできますか?

答えて

2

デフォルトでログの出力を制限することはできませんが、log4j.propertiesを設定してファイルベースのログを追加することができます。

エラーが発生した場合、ログ自体に理由が表示されます(55行目の/app/controllers/Controller.javaにあります)。開発モードでそのURLにアクセスしようとすると、エラーが発生したレポートが表示されます。

実際のパスを "/ path-to-request"に置き換えたとします。おそらくこれが理由ではない場合、そのパスはルートファイルに存在しない可能性があります。

+0

私はここで特定の問題をデバッグしようとしていません。私はログにスタックテースを含めたい。スタックサイズを制限することは素晴らしい点ですが、実際の問題はスタックトレースのロギングです。それは可能ですか? – mustpax

+0

さて、私の環境では、ブラウザのリクエストが失敗したときに、エラーのスタックトレースと画面の詳細なエラー情報が表示されるので、ローカルの設定/プラグインに何かがある可能性があります。 –

0

ログには何の制限もありません。これはPRODモードによって異なります。私はエラーをデバッグし、フレームワークのコードを調べることをお勧めします。

関連する問題