当退出使用Rails应用程序raise
或fail
,如何避免显示回溯?
尝试使用back_trace_limit
但似乎只为控制台工作...?
当退出使用Rails应用程序raise
或fail
,如何避免显示回溯?
尝试使用back_trace_limit
但似乎只为控制台工作...?
你有超过使用与异常情况返回的回溯总量控制set_backtrace
方法。 例如:
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方法捕获所有错误,设置回溯为空数组,并重新引发改性异常。