Herramientas de rastreo
El rastreo es una técnica que muestra detalles de la ejecución de un programa. Si consigue realizar un seguimiento de la vía de ejecución, podrá conocer mejor cómo se ejecuta el programa y cómo éste interactúa con su entorno.
Además, podrá determinar con precisión las ubicaciones donde el programa empieza a desviarse de su comportamiento esperado.
Las herramientas de rastreo en Linux® son strace y ltrace. El mandato man strace muestra un conjunto completo de opciones disponibles.
- strace
- La herramienta strace rastrea las llamadas al sistema. Puede utilizarla en un proceso que ya está disponible, o bien iniciarla con un nuevo proceso. strace registra las llamadas al sistema que realiza un programa y las señales que recibe un proceso. Para cada llamada al sistema, se utiliza el nombre, los argumentos y el valor de retorno. strace le permite rastrear un programa sin requerir el código fuente (no es necesario volver a compilar). Si utiliza strace con la opción -f, se rastrearán los procesos hijo que se hayan creado como resultado de una llamada al sistema bifurcada. Puede utilizar strace para investigar problemas de plug-in o intentar entender por qué los programas no se inician correctamente.
Para utilizar strace con una aplicación Java™ , escriba
strace java <class-name>.Puede dirigir la salida de rastreo de la herramienta strace a un archivo utilizando la opción
-o. - ltrace
- La herramienta ltrace depende de la distribución. Es muy parecida a strace. Esta herramienta intercepta y registra las llamadas dinámicas a la biblioteca que realiza el proceso en ejecución. strace hace lo mismo para las señales que recibe el proceso en ejecución.
Para utilizar ltrace con una aplicación Java, escriba
ltrace java <class-name>