production.log empty on Rails 4 / Capistrano / Pas

2019-04-03 10:38发布

问题:

I have set up a rails 4 server on Ubuntu 12.04 using Capistrano, Nginx, Passenger, Postgres, Redis/Resque

Everything is working great, except that the production.log file is always empty.

I have tried a variety of configuration changes in production.rb to no avail.

It's definitely not a permissions issue, as the permissions on both the log dir and each of the logs are wide open (777)

Can anyone hep me figure out how to get basic logging working?

回答1:

The culprit was Heroku's rails_12factor gem

Removing that gem from the Gemfile, now the logs are working as expected.

# group :production do
#   gem 'rails_12factor'
# end


回答2:

To clarify, the rails_12factor gem was responsible, but that's only because it includes rails_stdout_logging, which is the real culprit, however, due to it's intended behavior to "ensure that your logs will be sent to standard out."



回答3:

Check with the log levels in production.rb file, config.log_level = :debug will display it's errors. Also make sure the server is running production mode, in case you have not made any changes any configuration files for rails env, production mode is by default.