On Sun, Oct 10, 2004 at 08:02:20PM +0900, Alexey Verkhovsky wrote: > Below is a typical Rails exception thrown from within functional tests. > The interesting part of this exception (test and application code) is > precisely within "... 18 levels..." that are hidden by the interpreter. > > Is there any good way to convince Ruby to print full stack trace? I had the same issue a couple of years ago, and I ended up grepping through the interpreter C source for the string "levels..." to find it. Doing so again... it looks like these are hard-coded constants in eval.c #define TRACE_HEAD 8 #define TRACE_TAIL 5 So you can change these (and recompile ruby). But I think what I did in the end was just wrap the code with my own exception catcher, since the full backtrace array is available to you: def foo(y) raise "hell" if y <= 0 foo(y-1) end begin foo(75) rescue Exception => e puts "Exception: #{e.class}: #{e.message}\n\t#{e.backtrace.join("\n\t")}" exit 1 end Regards, Brian.