Backtrace of all threads

It would still help tremendously if somebody could implement a way to spit out all fiber backtraces…sometimes if crystal is “hung” it’s impossible to use gdb to see where it is hung at, so it feels quite blind. I have to add a bunch of STDERR.puts ’ in there to try and track its progress.

that or another idea would be a compiler mode “tracer” (like ruby tracer) that prints something to STDERR for “each and every method call” I’d love that too!

I’d be happy to contribute a couple hundred toward either of these two efforts if it would help.
See also


In OSX I’ve used the sample app for that.

In linux there seems to be something similar

I agree that some internal introspection would be good.

Nice, yeah I’ve tried “gdb poor man’s profiler” I’ll give oprofile a shot. I think if the “fiber” is on a blocking IO call it won’t show up in the profile graphs, so it’s so fast that stack profilers miss it, but they don’t miss cpu bound stuff which is nice… :)

Ah, yeah I missed that you wanted the sleeping fibers also. Fair point.