btraceback (1)
Leading comments
Hey, EMACS: First parameter, NAME, should be all caps Second parameter, SECTION, should be 1-8, maybe w/ subsection other parameters are allowed: see man(7), man(1)
NAME
btraceback - wrapper script around gdb and bsmtp
SYNOPSIS
btraceback /path/to/binary pidDESCRIPTION
btraceback is a wrapper shell script around the gdb debugger (or dbx on Solaris systems) and bsmtp, provided for debugging purposes.USAGE
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).NOTES
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.
ENVIRONMENT
btracback relies on $PATH to find the debugger.FILES
- /usr/lib/bacula/btraceback
-
- The script itself.
- /usr/sbin/btraceback
-
- symbolic link to /usr/lib/bacula/btraceback
- /etc/bacula/scripts/btraceback.gdb
-
- the GDB command batch used to output a stack trace