2013-09-23 4 views
11

突然、私のアプリケーションをローカルで実行すると、コンソール出力が2倍になります。これを引き起こした可能性のあることは誰か知っていますか?問題が存在して両方シンとユニコーンダブルコンソール出力?

=> Booting Thin 
=> Rails 4.0.0 application starting in development on http://0.0.0.0:3000 
=> Run `rails server -h` for more startup options 
=> Ctrl-C to shutdown server 
>> Thin web server (v1.5.1 codename Straight Razor) 
>> Maximum connections set to 1024 
>> Listening on 0.0.0.0:3000, CTRL+C to stop 
Started GET "/" for 127.0.0.1 at 2013-09-05 22:21:21 +0200 
Started GET "/" for 127.0.0.1 at 2013-09-05 22:21:21 +0200 
Processing by HomeController#index as HTML 
Processing by HomeController#index as HTML 
    Rendered home/index.html.erb within layouts/application (299.5ms) 
    Rendered home/index.html.erb within layouts/application (299.5ms) 
    Rendered layouts/_navbar.html.erb (38.3ms) 
    Rendered layouts/_navbar.html.erb (38.3ms) 
    Rendered layouts/_footer.html.erb (0.8ms) 
    Rendered layouts/_footer.html.erb (0.8ms) 
Completed 200 OK in 704ms (Views: 428.1ms | ActiveRecord: 52.4ms) 
Completed 200 OK in 704ms (Views: 428.1ms | ActiveRecord: 52.4ms) 

を実行しているとき、これは私のGemfile

# Gemfile 
source 'https://rubygems.org' 

ruby '2.0.0' 

gem 'rails' 

gem 'actionpack-action_caching' 
gem 'asset_sync' 
gem 'authlogic', github: 'binarylogic/authlogic' 
gem 'bootstrap-sass', github: 'thomas-mcdonald/bootstrap-sass', branch: '3' 
gem 'coffee-rails' 
gem 'dalli' 
gem 'font-awesome-rails' 
gem 'highcharts-rails' 
gem 'jbuilder' 
gem 'jquery-rails' 
gem 'memcachier' 
gem 'newrelic_rpm' 
gem 'pg' 
gem 'prawn', '>= 1.0.0.rc2' 
gem 'prawn_rails' 
gem 'rack-mini-profiler', require: 'rack-mini-profiler' 
gem 'rack-timeout' 
gem 'rails-i18n' 
gem 'rails_12factor' # required by Heroku 
gem 'sass-rails' 
gem 'uglifier' 
gem 'yui-compressor' 

group :production do 
    gem 'justonedb' 
    gem 'unicorn-rails' 
end 

group :development do 
    gem 'annotate' 
    gem 'better_errors' 
    gem 'binding_of_caller' 
    gem 'hirb' 
    gem 'lol_dba' # To find table in need of indexes run 'lol_dba db:find_indexes' 
    gem 'mailcatcher' 
    gem 'pry' 
    gem 'quiet_assets' 
end 

group :test do 
    gem 'capybara' 
    gem 'capybara-webkit' 
    gem 'factory_girl_rails', require: false 
    gem 'fuubar' 
    gem 'rspec-rails' 
    gem 'rails_12factor' 
end 

マイdevelopment.rb

# development.rb 
Beerclub::Application.configure do 
    # Settings specified here will take precedence over those in config/application.rb. 
    config.log_level = :debug 

    # In the development environment your application's code is reloaded on 
    # every request. This slows down response time but is perfect for development 
    # since you don't have to restart the web server when you make code changes. 
    config.cache_classes = false 

    # Do not eager load code on boot. 
    config.eager_load = false 

    # Show full error reports and disable caching. 
    config.consider_all_requests_local  = true 
    config.action_controller.perform_caching = false 

    # Don't care if the mailer can't send. 
    config.action_mailer.raise_delivery_errors = false 

    # Print deprecation notices to the Rails logger. 
    config.active_support.deprecation = :log 

    # Raise an error on page load if there are pending migrations 
    config.active_record.migration_error = :page_load 

    # Debug mode disables concatenation and preprocessing of assets. 
    # This option may cause significant delays in view rendering with a large 
    # number of complex assets. 
    config.assets.compress = false 
    config.assets.debug = true 
    config.serve_static_assets = true 
end 

とapplication.rb

require File.expand_path('../boot', __FILE__) 

require 'rails/all' 

# Require the gems listed in Gemfile, including any gems 
# you've limited to :test, :development, or :production. 
Bundler.require(:default, Rails.env) 

module Beerclub 
    class Application < Rails::Application 
    # Settings in config/environments/* take precedence over those specified here. 
    # Application configuration should go into files in config/initializers 
    # -- all .rb files in that directory are automatically loaded. 

    # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone. 
    # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC. 
    config.time_zone = 'Copenhagen' 

    # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. 
    config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] 
    config.i18n.default_locale = :da 

    # Enable the asset pipeline 
    config.assets.enabled = true 
    config.assets.version = '1.0' 

    # Needs to be false on Heroku 
    config.serve_static_assets = false 
    config.static_cache_control = "public, max-age=31536000" 

    # Add the fonts path 
    config.assets.paths << Rails.root.join('app', 'assets', 'fonts') 
    config.assets.paths << Rails.root.join('vendor', 'assets', 'fonts') 

    # Precompile additional assets 
    config.assets.precompile += %w(*.svg *.eot *.woff *.ttf) 
    config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif) 
    end 
end 
+0

あなたの宝石を見て、そこに重複がないことを確認してください。 – MZaragoza

+0

@MoisesZaragoza Bundlerは、重複した宝石を持っているときに通常警告します。 –

答えて

1

チェックですこのようなコードがアプリケーション:

<img src="#"> 

これにより、Railsによって重複したレコードが作成されることがあります。

あなたがやってみてください:

rake assets:clean 

それともを、development.rbにこの行をコメントアウトし、うまくいくかもしれない:

config.active_support.deprecation = :log 

最後の試みとして、あなたもフォルダを変更してみて結果を確認するには、サーバーを起動します。

乾杯!

+1

あなたの答えに適切な文法を使うために時間をかけてください。 「あなた」を意味するときには「u」を使用しないでください。 「レール」のような適切な名詞は、大文字に変換されます。ありがとう。 –

+1

確かに、私は – aelor

+0

のままにしておきます。 "config.active_support.deprecation =:log"をコメントアウトするのは良い考えではないし、問題を解決するつもりもありません。このコメントは、 "#Rental loggerへの廃止通知の印刷"と述べています。 –

11

これは、rails_12factorの宝石のために発生したことに気付きました。 Gemfileからgem rails_12factorをコメントアウトすると、二重出力がなくなるはずです。私の推測では、二重出力は心配することは重要ではないということです。なぜなら、あなたはいつでもHerokuのために宝石を必要とするからです。 なぜ、rails_12factorの宝石がこれを引き起こすのか分かりません。 rails_12factorに関してで

12

- あなたはGemfile内の行を変更した場合:

gem 'rails_12factor', group: :production 

あなたはもはや、デバッグしながら、コンソールでの二重の出力が表示されます、など

+0

http://static.tvtropes.org/pmwiki/pub/images/MTG-ThreadNecromancer_3198.jpg – Esse

+0

私の問題を解決しました。お返事いただきありがとうございます。 – Asciant

0

あなたの例から、重複がインラインで起こっていることを示します。

A 
A 
B 
B 
C 
C 

代わりにあなたはすなわち、2つのバックツーバック重複リクエストに見えるものを見ている場合は、次の

A 
B 
C 

A 
B 
C 

あなたが強くaelorの<img src="#">を追い詰めるの答えまたは類似の自己@検討すべきです-referential urlタグ。私は自分のアプリケーションが2つの重複要求を行うように見えるた理由を理解しようと時間を費やし、そしてaelorの答え@読んだ後、私は私のコードで

%link{href: "", rel: "shortcut icon"}/ 

を見つけました!私のプロダクションアプリのすべてのページがダブルレンダリングされていました!!パフォーマンスが悪くて迷惑!

0

Rails 4.2から、この投稿の時点で、私が知っている唯一の解決策は、Gemfileからrails_12factorを削除することです。

group: :productionを追加することで、もはやダブルログが防止されなくなりました。 githubの上のHerokuのオープン問題があります:

https://github.com/heroku/rails_stdout_logging/issues/1

0

我々は、これは

$ rails server 

ではなく

$ thin start 

後者を使用して経由でRailsのサーバーを実行することによって引き起こされたました、ダブルログの問題は解消されます。残念ながら、私たちは原因を突き止める時間がありませんでした。ちょうどThinを起動し、移動した方法を変更しました。