输出救援中的错误(Ruby / Rails)

只是一个简单的问题。 我无法在文档中find它。

如果我使用标准的begin ... rescue ,我如何打印所有错误或堆栈跟踪到救援?

例如:

 begin do x rescue puts errors end 

有任何想法吗?

至less有两种方法可以让我知道这个错误。 第一个是使用全局variables:$! 它始终设置为发生的最后一个错误。 第二个是通过在救援时明确捕获错误:

 begin # do something that fails... rescue => error # error and $! are equivalent here end 

任一人都可以让你检查或打印出回溯使用:

 $!.backtrace # => array of backtrace steps error.backtrace # => same error