Linux – Log files not being written (Passenger)

apache-2.2centoslinuxphusion-passengerruby-on-rails

Locally, my app runs fine on and writes to it's logs.

My production server is running CentOS with an Apache server running Passenger. When trying to debug, I noticed my log files were not being written to. First thing I did was chmod 0666 them, and when I found out that didn't work I looked at my apache log. I found this:

Rails Error: Unable to access log
file. Please ensure that
/var/www/vhosts/mysite.com/rails/exp/releases/20091124020342/log/production.log
exists and is chmod 0666. The log
level has been raised to WARN and the
output directed to STDERR until the
problem is fixed.

(Note: I am deploying with capistrano)

Anyway, I googled around and found people saying it's an SELinux issue, so I looked on passenger's doc's and found this: http://www.modrails.com/documentation/Users%20guide.html#%5Fmy%5Frails%5Fapplication%5F8217%5Fs%5Flog%5Ffile%5Fis%5Fnot%5Fbeing%5Fwritten%5Fto

which basically says do this: chcon -R -h -t httpd_sys_content_t /path/to/your/rails/app

However, when I fill in the proper path I get: Operation not supported.

Pretty stumped…any ideas?

Best Answer

Check out using top which user the passenger processes are run as. IIRC it won't necessarily be the www-data/apache user.

Related Topic