You'll probably already know this, but it's best to tell compiler to include symbol table to the binary, so that they get automatically loaded when you invoke hatari debugger.
And if you enable profiling ("profile on") early on, you will get a backtrace (for the part of the code that ran since last debugger invocation), whenever you invoke debugger.
I would also recommend enabling at least "--trace os_base". When Hatari is already running, you can change trace options, and other things Hatari accepts as command line options, with debugger "setopt" command.
For info on automating above and more, see:
https://hatari.tuxfamily.org/doc/debugger.html
PS. You can use NatFeats for very low overhead asserts, and for debug output from things where you cannot normally print anything (e.g. IRQ handlers):
https://git.tuxfamily.org/hatari/hatari ... readme.txt