Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rails production.log file is empty

I'm using Rails 2.3.13 and in my environments/production.rb, I have:

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

Yet my log/production.log is empty. Why would that be?

like image 677
Shamoon Avatar asked Mar 04 '13 20:03

Shamoon


1 Answers

You are instantiating a SyslogLogger, so your logging will go into the syslog (in most cases available as a file in /var/log/syslog on Unix systems) and not into a logfile. The parameter you pass to the logger (mysite-platform-production) is the identifier used by syslog and not a filename.

If you want to log to a file in your log directory, you have to set up your logger as follows:

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

But: I am pretty sure that you don't actually have to do that explicitly but that it is done by default by Rails, so I suggest just not setting RAILS_DEFAULT_LOGGER in your code and you should get a logger that logs into log/production.log implicitly...

like image 100
severin Avatar answered Oct 07 '22 01:10

severin