threaddump thread java debugging tomcat jstack jstat

threaddump java



Jstack y Jstat dejaron de funcionar con la actualizaciĆ³n a JDK6u23 (2)

Encontré una posible respuesta en el foro de Oracle:

Si bien es cierto que 6u23 / 24 presenta este problema, no es un error en jps. Más bien un cambio en el comportamiento de la propia VM. En GNU / Linux Jps y los me gusta parecen solo ver / tmp pero no necesariamente su CATALINA_TMPDIR. Si está configurado o no, intente exportar CATALINA_TMPDIR = / tmp que se traduce en "-Djava.io.tmpdir = / tmp" y después de reiniciar el proceso Tomcat, verá los datos de Tomcat como "/ tmp / hsperfdata_ /" y Jps probablemente trabajar de nuevo también.

Recientemente hemos actualizado de JDK6u20 (Linux, 32 bits y 64 bits) a JDK6u23. Desde entonces, ya no podemos usar las herramientas jstack y jstat para obtener información de monitoreo del proceso en ejecución. Si volvemos a JDK6u20, todo funciona bien.

Estamos ejecutando Tomcat 6. Según esta publicación del foro, otros tienen el mismo problema: http://forums.oracle.com/forums/thread.jspa?threadID=2151967&tstart=0

Ejecutar procesos simples de Java y usar las herramientas funciona.

Jstack dice: No se puede abrir el archivo de socket: el proceso de destino no responde o HotSpot VM no está cargada La opción -F se puede usar cuando el proceso de destino no responde.

Jstat dice: 19799 no encontrado

El uso de Jps no muestra los procesos en ejecución, así que supongo que el problema es más de naturaleza general con JDK6u23 y también con JDK6u24. Tiene un nuevo motor Hotspot. Tal vez algo no funcione en conjunto con Tomcat y ese Hotspot v19.

¿Alguna idea? Se agradece la ayuda.

PS Por supuesto, lo ejecutamos como el mismo usuario y no hemos cambiado nada más. Sólo el JDK.