2013-07-15 25 views
8

Ruby 1.9.3 üzerinde Ruby on Rails 4 kullanıyorum. Bir komisyon görevi sırasında bir hata oluştuğunda, çok güzel bir yığın izini alırım.Rails 4 konsolunda özel yığın yığınını etkinleştir

Bununla birlikte, bir istisnayı tetikleyen raylarımda (gözetleme) bir şey yapıyorum, sadece hata iletisini ve tetikleyen bir kod satırını görüyorum (çoğu zaman rayların çekirdeğinde bir yerdedir)).

Konsolda bu yığın dökümlerini etkinleştirmenin bir yolu var mı?

cevap

22

(tüm satırları göster).

Görünüşe göre, gözetleme ile gelen wtf? komutuna ihtiyacım vardı. Ben tam olarak bunu yaparken

[7] project » p.known_attributes 
NoMethodError: undefined method `foo' for #<Bar:0x007f871fd12a38> 
from /[...]/gems/activemodel-4.0.0/lib/active_model/attribute_methods.rb:436:in `method_missing' 

[8] project » wtf? 
Exception: NoMethodError: undefined method `foo' for #<Bar:0x007f871fd12a38> 
-- 
[... stack dump ...] 

[9] project » 
+0

Bu beni mutlu ediyor –

1

konsolunda bir hata onunla Sorun nedir bu

$ rails c 
Loading development environment (Rails 4.0.0) 
irb(main):001:0> no_method 
NameError: undefined local variable or method `no_method' for main:Object 
    from (irb):1 
    from /Users/michal/Projects/tennisliga/.gems/gems/railties-4.0.0/lib/rails/commands/console.rb:90:in `start' 
    from /Users/michal/Projects/tennisliga/.gems/gems/railties-4.0.0/lib/rails/commands/console.rb:9:in `start' 
    from /Users/michal/Projects/tennisliga/.gems/gems/railties-4.0.0/lib/rails/commands.rb:64:in `<top (required)>' 
    from bin/rails:4:in `require' 
    from bin/rails:4:in `<main>' 

gibi bir şey göreceksiniz var? Yığın izi göremiyor musunuz?

DÜZENLEME: Eğer gözetlemek kullanıyor ve pry wiki Kısa örneğe bakın daha yığın izleme görmek istiyorum Eğer kendimi bir çözüm buldum

Pry.config.exception_handler = proc do |output, exception, _pry_| 
    output.puts "#{exception}" 
    output.puts "#{exception.backtrace}" 
end 
+0

, Ne alıyorum sadece 'NameError geçerli: tanımsız yerel değişken veya yöntem 'no_method' ana için: '

'' in: 1: (PRY) Nesne . Yığın yok. –

+0

Şimdi görüyorum ki bu gözetlemenin bir eli olabilir. Bu mümkün olabilir mi? –

+0

Varsayılan konsol olarak ayarlanmış gözetleme var mı? –