Obtener un registro de error

De openSUSE, la enciclopedia libre.

Un registro de error y un backtrace resultan útiles a la hora de saber donde se produce el problema y la posible causa del mismo.

Como obtener un registro strace

En la mayoría de los casos basta con iniciar la aplicación con el siguiente comando:

strace -o /tmp/strace.log -f -tt -s 512 <aplicación_a_ejecutar>

Ejecutar los pasos necesarios para reproducir el error y salir de la aplicación. Luego adjuntar al reporte de error el registro comprimido:

bzip2 /tmp/strace.log

En caso de tratarse de una aplicación de 32-bit sobre un sistema de 64-bit, es necesario instalar strace-32bit y ejecutar este comando en lugar de strace.

strace-32bit -o /tmp/strace.log -f -tt -s 512 <aplicación_a_ejecutar>

Como obtener un backtrace

Los backtrace son útiles cuando una aplicación se congela o se cierra de forma inesperada.

1. En primer lugar es necesario instalar el paquete -debuginfo correspondiente a la apliación. 2. Ejecutar el debugger y regitrar la salida

gdb <aplicación_a_ejecutar> 2>&1 | tee /tmp/gdb.log

3. Dentro del debugger, ejecutar la aplicación

run <opciones>

4. Realice los pasos necesarios para reproducir el defecto, en caso de que se congele la aplicación, es necesario presionar CTRL+C para retornar al debugger.

5. Imprimir el backtrace

backtrace

6. Imprimir el backtrace para todos los thread

thread apply all bt

7. Salga del debugger

quit

8. Adjunte el archivo gdb.log al reporte (en caso de ser muy grande comprímalo con bzip2)