Tengo un programa que tarda mucho en fallar.

¿Es posible ejecutar el programa y rastrear lo que está sucediendo en un archivo, como lo hace trus?

1
Lefsler 12 ene. 2012 a las 19:52
1
¿Qué le pasa a truss? En Linux, tiene strace, si no está disponible.
 – 
Dan Fego
12 ene. 2012 a las 19:57
1
¿Usa truss (Solaris y otros) o strace (Linux) como dijiste? ¿Cuál es tu pregunta?
 – 
Celada
12 ene. 2012 a las 19:57
¿Es un programa compilado o tiene sus fuentes?
 – 
Andrejs Cainikovs
12 ene. 2012 a las 19:58
O simplemente espere hasta que se bloquee y analice el archivo principal (gdb en Linux / BSD, DRWatson en MSWindows)
 – 
symcbean
12 ene. 2012 a las 19:59
Tengo la fuente, gracias, intentaré el strace ... el programa es enorme y se ejecuta durante 8 a 10 días hasta que se bloquea.
 – 
Lefsler
12 ene. 2012 a las 20:11

1 respuesta

La mejor respuesta

"Depende".

Si el programa está haciendo muchas llamadas al sistema, como si fuera muy intensivo en E / S, probablemente pueda obtener algo útil ejecutándolo a través de strace. De lo contrario, es posible que desee intentar crear un perfil e inspeccionar el perfil. Tenga en cuenta que la generación de perfiles a menudo requiere que pueda reconstruir el programa para agregar el código de instrumentación de generación de perfiles.

2
unwind 12 ene. 2012 a las 19:56