以下是我在仅更改 Ruby 版本时遇到的错误的 Rails 服务器日志的两个示例。
Ruby 2.4.2,Rails 5.1.4,Puma 3.11.0:
NoMethodError - undefined method `recent' for #<Event:0x00007f08507bf8b8>:
path/to/show.html.haml:50:in `block in _path_to_show_html_haml___4224769623360811234_28796540'
path/to/show.html.haml:30:in `_path_to_show_html_haml___4224769623360811234_28796540'
Ruby 2.5.0 ,Rails 5.1.4,Puma 3.11.0:
NoMethodError - undefined method `recent' for #<Event:0x00007f8ccc1b9508>:
我该如何重新启用Rails日志中的堆栈跟踪?看起来没有办法查看要查看的文件/行号。
为了协助调查,我将以下内容添加到我的ApplicationController
:
rescue_from Exception do |exception|
byebug
1+1
end
Ruby 2.4.2
(byebug) exception.backtrace
# A very large array of paths appears
Ruby 2.5.0
(byebug) exception.backtrace
nil
backtrace
方法的输出是否有任何更改? - tadmanexception.backtrace
显示为空。我会更新我的问题以反映这一点。 - ardavis