如何抑制Rails中的回溯?

使用raisefail退出Rails应用程序时,如何防止回溯显示?

尝试使用back_trace_limit但它似乎只适用于控制台…?

通过使用set_backtrace方法,您可以完全控制通过exception实例返回的回溯。 例如:

 def strip_backtrace yield rescue => err err.set_backtrace([]) raise err end begin strip_backtrace do puts 'hello' raise 'ERROR!' end rescue => err puts "Error message: #{err.message}" puts "Error backtrace: #{err.backtrace}" end 

输出:

 hello Error message: ERROR! Error backtrace: [] 

此处的strip_backtrace方法捕获所有错误,将回溯设置为空数组,并重新引发修改后的exception。