Rails应用程序日志中的重复输出

时间:2015-03-27 14:16:30

标签: ruby-on-rails

这是我的输出:

Cache read: views/c4f74176be2db099863b59e962270679
Cache read: views/c4f74176be2db099863b59e962270679
Read fragment views/c4f74176be2db099863b59e962270679 (0.3ms)
Read fragment views/c4f74176be2db099863b59e962270679 (0.3ms)
  Rendered planners/new.html.erb within layouts/application (12.0ms)
  Rendered planners/new.html.erb within layouts/application (12.0ms)
  Rendered layouts/_nav_bar.html.erb (1.3ms)
  Rendered layouts/_nav_bar.html.erb (1.3ms)
  Rendered layouts/_footer_bar.html.erb (0.1ms)
  Rendered layouts/_footer_bar.html.erb (0.1ms)
Completed 200 OK in 861ms (Views: 859.2ms | ActiveRecord: 0.7ms)
Completed 200 OK in 861ms (Views: 859.2ms | ActiveRecord: 0.7ms)

这是我的gemfile:

source 'https://rubygems.org'
ruby '2.1.3'

gem 'rails',                    '4.2.0'
gem 'pg',                       '~> 0.18.1'
gem 'sass-rails',               '~> 5.0'
gem 'uglifier',                 '>= 1.3.0'
gem 'coffee-rails',             '~> 4.1.0'

gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder',                 '~> 2.0'
gem 'sdoc',                     '~> 0.4.0', group: :doc
gem 'paperclip',                '~> 4.2.1'
gem 'faker',                    '~> 1.4.2'
gem "twitter-bootstrap-rails",  '~> 3.2.0'
gem 'bootstrap_form',           '~> 2.2.0'
gem 'bcrypt',                   '~> 3.1.7'
gem 'unicorn',                  '~> 4.8.3'
gem "therubyracer",             '~> 0.12.1'
gem "less-rails",               '~> 2.6.0'
gem "rails_12factor",           '~> 0.0.3'
gem 'aws-sdk',                  '~> 1.5.7'
gem 'omniauth-twitter',         '~> 1.1.0'
gem 'figaro',                   '~> 1.1.0'
gem 'responders',               '~> 2.1.0'
gem 'faraday',                  '< 0.9.0'
gem 'rest-client',              '~> 1.7.3'
gem 'bootstrap-datepicker-rails'
gem "dalli"


group :development, :test do
  gem 'simplecov',              '~> 0.9.1'
  gem 'pry',                    '~> 0.10.1'
  gem 'pry-byebug'
  gem "factory_girl_rails",     '~> 4.0'
  gem 'web-console',            '~> 2.0'
  gem 'spring',                 '~> 1.2.0'
  gem 'capybara',               '~> 2.4.4'
  gem 'mocha',                  '~> 1.1.0'
  gem 'launchy',                '~> 2.4.3'
  gem 'capybara_minitest_spec'
  gem 'database_cleaner',       '~> 1.4.0'
  gem 'quiet_assets'
  gem 'awesome_print',          require: "ap"
  gem 'vcr'
end

我的输出由于某种原因加倍但看起来它只是输出加倍而没有运行两次。我的查看时间加载是相同的,因此看起来它只是一个STDOUT加倍。发生了什么事?

1 个答案:

答案 0 :(得分:6)

简短回答

将rails_12factor限制为仅限生产:

gem "rails_12factor",           '~> 0.0.3', group: :production

长答案

除了将日志发送到记录器之外,命令rails server还会将您的日志发送到stdout。因此,如果您的记录器写入stdout,则每个条目将在终端上出现两次。

gem rails_12factor将您的日志发送到stdout。如果您在开发中使用它,并使用rails server启动您的环境,那么您将获得重复的日志。有关详细信息,请参阅此评论(及其主题):

最后一个问题虽然:在生产中使用Rails控制台时我仍然可以看到重复的SQL输出(但不是在服务器日志上)。这个问题仍在Rails问题跟踪器上讨论,似乎还没有解决方案。参见: