Logo

Programming-Idioms

This language bar is your friend. Select your favorite languages!

Idiom #253 Print stack trace

Print the stack frames of the current execution thread of the program.

import GHC.Stack
msgStacktraced :: HasCallStack => String -> IO ()
msgStacktraced msg = putStrLn (msg ++ "\n" ++ prettyCallStack callStack)
import "runtime/debug"
debug.PrintStack()
console.trace()
for(StackTraceElement stackTraceElement : Thread.currentThread().getStackTrace()) {
	System.out.println(stackTraceElement.toString());
}
dump_stack(stdout,0);
import Carp 'cluck';
cluck 'print this message and a full stack track';
import inspect
for frame in inspect.stack():
    print(frame)
puts caller
use backtrace::Backtrace;
let bt = Backtrace::new();
println!("{:?}", bt);

New implementation...
< >
programming-idioms.org