Debug A Core File Using Dbx

In some situations a process will not generate a core file appropriately on exit. In situations where a specific series of actions is known to trigger errors which will lead to a process termination it may be possible to use dbx to get stack information from the point when the process died. If the dbx debug executable exists on the system it may be possible to connect to the process in memory to gather the same information that might be outputted from a crash. To connect DBX to a process perform the following: 1. Log into the system as root. Launch the dbx command: dbx -a PID# tee dbx.out PID# is the PID of the process to connect to. Is the full path to the Progress executable to connect to.
Using the dbx Debug Program. If the core file exists in the current directory or a CoreFile parameter is specified. With the Solaris OS, use the dbx debugger to get information from a core file that cannot be opened with the Serviceability Agent.
For example if researching a problem and the below was in the process list: username 38744 1 2 17:02:55 - 0:00 /usr1/aix/dlc/bin/_mprosrv ibm91c 38744 is the PID and /usr1/aix/dlc/bin/_mprosrv is the full path to and including the executable The following command would be issued: dbx -a 38744 /usr1/aix/dlc/bin/_mprosrv tee dbx.out At this point repeat the sequence of actions which causes the abnormal termination. When the termination occurs go to the session where dbx was started. DBX will typically modify the prompt and will look similar to this: Waiting to attach to process 38744. Foundation Design Wayne C Teng Pdf Download. Successfully attached to _progres.
Type 'help' for help. Reading symbolic information.warning: no source compiled with -g stopped in wait.wait at 0xd034b914 ($t1) 0xd034b914 (wait+0xe8) 80410014 lwz r2,0x14(r1) (dbx) At this point issue the where command: (dbx) where The output should appear on the screen and in the file designated by the tee command to the dbx.out file. There are several ways to exit DBX 1) To exit DBX with a process termination issue the command: q 2) To exit without a process termination issue the command: detach NOTE: If the process was already in the process of termination the detach will not alter that chain of events. Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.
Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an 'AS IS' basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.