Tengo un proceso de Java que actúa de manera dudosa. Me gustaría ver qué pasa con las diversas herramientas de análisis de HPROF.¿Puedo generar un archivo HPROF a voluntad?
¿Cómo puedo generar uno sobre la marcha?
Tengo un proceso de Java que actúa de manera dudosa. Me gustaría ver qué pasa con las diversas herramientas de análisis de HPROF.¿Puedo generar un archivo HPROF a voluntad?
¿Cómo puedo generar uno sobre la marcha?
Debe iniciar el proceso de Java con the correct arguments,, que varía un poco según la versión de JVM. A continuación, envíe una señal QUIT
al proceso para generar un nuevo archivo.
La salida normalmente se genera cuando la máquina virtual sale, aunque esto se puede desactivar configurando la opción "volcar en la salida" en "n" (doe = n). Además, se genera un perfil cuando se presiona Ctrl- o Ctrl-Break (dependiendo de la plataforma). En Solaris OS y Linux también se genera un perfil cuando se recibe una señal QUIT (kill -QUIT pid). Si Ctrl- \ o Ctrl-Break se presiona varias veces, se generan múltiples perfiles en un archivo.
VisualVM lo pueden ayudar a profundizar en lo que está haciendo su proceso, incluida la capacidad de forzar arbitrariamente un volcado dinámico en un proceso en ejecución.
Sí. Puede generar un archivo hprof (que contiene el uso de memoria heap) sobre la marcha utilizando la herramienta jmap, que se incluye con el de Sun Java VM:
jmap -dump: file = < nombre_archivo> < pid>
Gracias por la respuesta. Además, puede usar jps para encontrar rápidamente el pid de su proceso de Java. –
jconsole ahora tiene la capacidad de crear un volcado para el directorio de trabajo actual de la aplicación.
No responde a la pregunta. – Ztyx