2014-09-05 70 views
0

我有一个我想通过Tomcat部署的jruby/rails(4.1)应用程序。我通过标准输出制作该应用程式日志中加入Jruby on Rails使用Tomcat进行日志记录

config.logger = Logger.new(STDOUT) 
config/application.rb

和日志线将要catalina.log

我们希望应用程序日志转到单独的Tomcat日志文件。可能吗?它如何配置?

谢谢!

回答

1

如果不设置config.logger在所有...它会记录到的servlet log

所以根本就没有做任何事情与config.logger(仅保留默认值),它应该工作(假定的JRuby当然 - 当然)。否则有2个选项:

  • 使用Java日志库(在TC的情况下,要么是JUL或Log4J的)和configure JRuby的机架下放在这种情况下

  • 或者干脆config.logger = Logger.new('logs/rails.log')确保您设置了格式,包括时间戳

注:知道,在第一种情况下的Java日志库将在信息列弗接收来自Rails的所有日志el(记录器未映射为“1对1”)......这可能会在未来的JRuby-Rack 1.2版本中发生变化。

+0

对不起,如果以下问题的答案很明显(我没有tomcat的经验):我可以在tomcat配置中为已部署的应用程序设置日志文件/循环策略吗?或者在tomcat中运行的每个应用程序都必须照顾他们自己的日志文件? – AlejandroVD 2014-09-08 15:16:50

+0

嗯,是的,你可以...你需要使用第一种情况,并配置tomcat的日志子系统(我认为默认情况下每个部署的应用程序每天轮换 - 试试看)。 – kares 2014-09-09 06:02:19

+0

好吧..我选择了更简单的第二个选项,停止记录到标准输出并开始登录到/ var/log目录。在'application.rb'中:'config.logger = Logger.new(Rails.root.join(“/ var/log/myapp”,Rails.env +“.log”),5,5 * 1024 * 1024) ' – AlejandroVD 2014-09-09 13:53:44