btraceback - wrapper script around gdb and bsmtp
btraceback /path/to/binary pid
btraceback is a wrapper shell script around the gdb debugger (or dbx on
Solaris systems) and bsmtp, provided for debugging purposes.
btraceback is called by the exception handlers of the Bacula daemons
during a crash. It can also be called interactively to view the
current state of the threads belonging to a process, but this is not
recommended unless you are trying to debug a problem (see below).
In order to work properly, debugging symbols must be available to the
debugger on the system, and gdb, or dbx (on Solaris systems) must be
available in the $PATH.
If the Director or Storage daemon runs under a non-root uid, you will
probably need to be modify the btraceback script to elevate privileges
for the call to gdb/dbx, to ensure it has the proper permissions to
debug when called by the daemon.
Although Bacula’s use of btraceback within its exception handlers is
always safe, manual or interactive use of btraceback is subject to the
same risks than live debugging of any program, which means it could
cause Bacula to crash under rare and abnormal circumstances.
Consequently we do not recommend manual use of btraceback in production
environments unless it is required for debugging a problem.
btracback relies on $PATH to find the debugger.
The script itself.
symbolic link to /usr/lib/bacula/btraceback
the GDB command batch used to output a stack trace
This manual page was written by Lucas B. Cohen <firstname.lastname@example.org>