2011-01-25 11 views
12

Onun dışarı standardına giriş yapmak istiyor standart dışında kullanılabilecek raylar logger nasıl değiştirileceği.tırmık görevleri (rails2) benim tırmık görevleri içinden</p> <p>Rails.logger.debug "merhaba dünya" yaptığınızda

Raylar günlüğünü, komisyon görevimden Logger.new (STDOUT) konumuna nasıl ayarlayabilirim?

Uygulamamın, denetleyicilerden gelirken dosyaya giriş yapmasını istiyorum, yalnızca izleme görevimin kurulduğundan ötürü komisyon görevlerinin std çıkışı yapmasını istiyorum.

Başka bir ortam tanımlayabildiğimi ve bu yapılandırmayı kullanabileceğimi düşünüyordum, ancak büyük olasılıkla, her bir ortamdaki tüm aynı ortamın olmasını istiyorum, yalnızca günlük hedefimin konumunu değiştirmek istiyorum.

Şimdilik koç kullanan bir günlük yardımcım var, ancak rayların günlüklerinin ve arabelleğin biçimlendirilmesinden yararlanmak istiyorum.

 
RAILS_DEFAULT_LOGGER = Logger.new(STDOUT) 

Ayrıca uygulamanın belirli bölümlerine böyle (ActiveRecord, ActionController ...) için logger ayarlayabilirsiniz:

cevap

6

Varsayılan logger bu şekilde sıfırlayabilirsiniz

 
ActiveRecord::Base.logger = Logger.new(STDOUT) 
+0

bu denendi ve var: /lib/tasks/fetch_influencers.rake:4: Dinamik sabit atama RAILS_DEFAULT_LOGGER Logger.new (STDOUT) (Ben senin çözüm raylar 3. çalışır düşünüyorum, ben bir rails2 ihtiyacım = çözüm) – Joelio

+0

Bu bir uyarı mı yoksa bir hata mı? Bunu yaparsanız bir uyarı alırsınız çünkü bir sabit değiştiriyorsunuz, ancak yine de yapabilmeniz gerekir. –

+1

lib/tasks/fetch_data.rake: 4: dinamik sabit atama RAILS_DEFAULT_LOGGER = Logger.new (STDOUT) – Joelio

9

Ben sadece Rails.logger = Logger.new(STDOUT) yaptım ve bu da çalıştı (raylar3)

0

Raylar 4 ile gem rails_12factor kullanacaksınız. Bunu Gemfile ve voilà'nıza yerleştirin! mücevher 'rails_12factor_'

İlgili konular