2011-08-09 147 views
4

当播放应用在生产模式下运行时,遇到一个500错误,它会记录错误,像这样:日志堆栈跟踪的Play应用

[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模式。我会建议调试错误并查看框架的代码。

相关问题