Rails production.log文件为空

时间:2013-03-04 20:35:13

标签: ruby-on-rails

我正在使用Rails 2.3.13,在我的environments/production.rb中,我有:

config.log_level = :info
RAILS_DEFAULT_LOGGER = SyslogLogger.new('mysite-platform-production')

然而我的log/production.log是空的。为什么会这样?

2 个答案:

答案 0 :(得分:9)

您正在实例化SyslogLogger,因此您的日志记录将进入syslog(在大多数情况下可用作Unix系统上 / var / log / syslog 中的文件)而不是一个日志文件。传递给记录器的参数( mysite-platform-production )是syslog使用的标识符,而不是文件名。

如果要登录日志目录中的文件,则必须按如下方式设置记录器:

RAILS_DEFAULT_LOGGER = Logger.new('log/production.log')

但是:我很确定你实际上并不是必须明确地这样做,但Rails是默认完成的,所以我建议你不要在你的RAILS_DEFAULT_LOGGER中设置{{1}}代码,您应该得到一个记录器,隐式登录 log / production.log ...

答案 1 :(得分:-1)

考虑到你如何设置记录器,你应该找到一个名为'mysite-platform-production'的文件,而不是production.log ,它将在根目录 >你的项目。如果你想在'log / mysite-platform-production.log'中找到它,你将不得不这样做:

RAILS_DEFAULT_LOGGER = SyslogLogger.new('log/mysite-platform-production.log')