日志/ production.log文件存在,但是为空

我已经search了一整天的解决scheme,并已短暂地…任何洞察力感到高兴。 提前致谢。

问题:log / production.rb文件存在,但在生产Rails 4.0环境中为空。 log / development.rb是在开发Rails 4.0环境中的预期。

一点背景:使用Rails 4,Ruby 2.0.0-p247,Capistrano 3.0.1,Unicorn 4.7.0和nginx 1.4.1。

应用程序根和权限

drwxrwsr-x 13 deployer deployer 4096 2013-11-10 21:30 ./ drwxrwsr-x 7 deployer deployer 4096 2013-11-10 21:30 ../ drwxrwsr-x 8 deployer deployer 4096 2013-11-10 21:31 app/ -rw-rw-r-- 1 deployer deployer 2015 2013-11-10 21:30 assets_manifest_backup drwxrwsr-x 2 deployer deployer 4096 2013-11-10 21:31 bin/ drwxrwsr-x 2 deployer deployer 4096 2013-11-10 21:30 .bundle/ -rw-rw-r-- 1 deployer deployer 473 2013-11-10 21:31 Capfile drwxrwsr-x 6 deployer deployer 4096 2013-11-10 21:30 config/ -rw-rw-r-- 1 deployer deployer 154 2013-11-10 21:31 config.ru drwxrwsr-x 3 deployer deployer 4096 2013-11-10 21:31 db/ -rw-rw-r-- 1 deployer deployer 1378 2013-11-10 21:31 Gemfile -rw-rw-r-- 1 deployer deployer 3418 2013-11-10 21:31 Gemfile.lock -rw-rw-r-- 1 deployer deployer 488 2013-11-10 21:31 .gitignore drwxrwsr-x 5 deployer deployer 4096 2013-11-10 21:31 lib/ drwxrwsr-x 2 deployer deployer 4096 2013-11-10 21:30 log/ drwxrwsr-x 2 deployer deployer 4096 2013-11-10 21:30 public/ -rw-rw-r-- 1 deployer deployer 249 2013-11-10 21:31 Rakefile -rw-rw-r-- 1 deployer deployer 3165 2013-11-10 21:31 README.md drwxrwsr-x 8 deployer deployer 4096 2013-11-10 21:31 test/ drwxrwsr-x 3 deployer deployer 4096 2013-11-10 21:30 tmp/ drwxrwsr-x 3 deployer deployer 4096 2013-11-10 21:31 vendor/ 

所以我知道日志具有与其他目录相同的权限。

我在config / environments / production.rb中没有任何神奇的东西,因为我认为Rails会隐式地为我生成日志。 我将config.log_level设置为:info。 (特别是因为日志工作在开发环境。)

显然考虑到环境的变化,这个问题必须与/日志权限有关,或者在Railsconfiguration中缺less明显的东西。

在设置Capistrano 3进行部署时,我使用了deploy_topath的build议权限( http://www.capistranorb.com/documentation/getting-started/authentication-and-authorisation/ )。 他们想要chmod -R g + s $ deploy_to,所以我想知道这是否对日志生成有任何影响。

我打开任何解决scheme,但宁愿坚持内置的Rails日志,而不是使用别的东西。

再次感谢!

更新:添加set :linked_dirs, %w{... log ...} config / deploy.rb日志的权限似乎是准确的,因为我现在得到独angular兽标准输出和stderr在日志/ unicorn.log。

这个问题似乎与我的独angular兽设置有关,因为我无法成功重新启动或重新加载工人。

Capistrano链接目录后的app_root / log的内容(上图):

 drwxr-sr-x 2 deployer deployer 4096 2013-11-11 06:23 ./ drwxrwsr-x 9 deployer deployer 4096 2013-11-11 06:20 ../ -rw-r--r-- 1 deployer deployer 0 2013-11-11 06:20 production.log -rw-r--r-- 1 deployer deployer 11570 2013-11-11 07:09 unicorn.log 

对不起,如果这是非常明显的答案,但鉴于权限是相同的,你确定你正在生产中运行?

当你运行以下时会发生什么?

  tail -f log/production.log 

这个问题是由于Unicorn在升级到Capistrano v3.0.1之后无法在我的web服务器上成功启动造成的。

我从应用中剥离了Unicorn,并用Phusion Passenger取而代之。 一切都很好。