webfire tutorial que liberty application java apache java-ee jvm websphere

java - tutorial - websphere liberty



forzar o generar volcado de nĂșcleo jvm(IBM JVM) (2)

Posible duplicado:
¿Puedo forzar la generación de un archivo de registro de errores de JVM?

¿Cómo puedo forzar o generar un volcado de núcleo JVM en un servidor de aplicaciones Java o en general?


Si está ejecutando su propio código, la forma de preguntas y respuestas es generar una excepción e imprimir inmediatamente su seguimiento de pila. De lo contrario, las herramientas de creación de perfiles deberían tener formas de capturar instantáneas de los subprocesos que se ejecutan en su JVM. He usado YourKit y me ha gustado, pero hay alternativas gratuitas .


Problema (Resumen): para diagnosticar los problemas relacionados con el bloqueo o el bajo rendimiento de las aplicaciones del cliente que se ejecutan en WebSphere Application Server Community Edition, los usuarios deberán generar los distintos volcados y enviarlos al Soporte de IBM para su diagnóstico.

Esta nota técnica explica cómo generar los volcados necesarios cuando WebSphere Application Server Community Edition se ejecuta como un servicio del sistema operativo. Esta nota técnica se aplica a IBM Java SDK 1.5.0 e IBM Java SDK 1.6.0

Causa : cuando las aplicaciones de los clientes experimentan un bloqueo o un rendimiento deficiente con WebSphere Application Server Community Edition en IBM Java SDK 1.5.0 o IBM Java SDK 1.6.0, y el servidor se ejecuta como un servicio del sistema operativo, la ventana de comando / shell correspondiente de El proceso del servidor no está disponible para los usuarios. Como resultado, las señales del usuario no pueden enviarse desde el teclado para desencadenar volcados.

Resolviendo el problema: cuando la ventana de comandos del proceso JVM está disponible, generar volcados es sencillo de la siguiente manera:

Windows: si la configuración JVM está configurada para activar los volcados en la señal del usuario, presione CRTL+Break en la ventana de comandos para generar los volcados.

Linux: si la configuración de JVM está configurada para generar los volcados en la señal del usuario, presione CTRL+/ en la ventana de shell.

AIX: si la configuración de JVM está configurada para generar los volcados en la señal del usuario, presione CTRL+/ en la ventana de shell.

Nota: Para generar un volcado de núcleo de Java, un volcado de núcleo de sistema, un volcado de pila y un volcado instantáneo en la señal del usuario, los agentes de volcado deben configurarse a través de las opciones de JVM de la siguiente manera:

-Xdump:java+heap+system+snap:events=user

Para obtener más información sobre cómo configurar agentes de volcado, visite usando -Xdump .

Sin embargo, si WebSphere Application Server Community Edition se ejecuta como un servicio de sistema operativo, la ventana de comando puede no estar disponible. Este caso también surgirá cuando el proceso JVM se inicie con javaw.exe en Windows.

En las circunstancias anteriores, el usuario debe encontrar el identificador de proceso correspondiente del proceso JVM y usar las herramientas suministradas por el proveedor del sistema operativo o IBM para generar los volcados siguiendo los pasos a continuación.

Windows: WinDbg se puede descargar desde el sitio de herramientas de Microsoft Dev para generar volcados de núcleo del sistema. Use el siguiente comando en la consola WinDbg para generar el volcado del núcleo del sistema:

dump /f <dumpfile>

Donde dumpfile incluye la ruta del directorio y el nombre del archivo de volcado del núcleo del sistema. Asegúrese de que se use la opción /f lugar de /ma . El /f genera un volcado completo, mientras que /ma genera un mini volcado. Solo los volcados completos son compatibles con la herramienta jextract suministrada con IBM Java SDK 1.5.0 / 1.6.0.

Utilidad SendSignal para Windows. Para esto, la JVM debe estar configurada para generar los volcados en las señales del usuario. Para generar el volcado de núcleo java, el volcado de pila, el volcado de núcleo del sistema y un volcado instantáneo en la señal del usuario, se debe proporcionar la siguiente opción a JVM al inicio:

-Xdump:java+heap+system+snap:events=user

Nota: la utilidad SendSignal se puede utilizar para generar todos los tipos de volcados en los que, como WinDbg, solo genera volcados del sistema.

Linux and AIX : la señal para Linux y AIX es SIGQUIT . Utilice el comando para enviar la señal del usuario para activar los distintos volcados:

kill -3 <PID>

Para esto, se debe configurar JVM para generar los volcados en la señal del usuario. Para generar el volcado de núcleo java, el volcado de pila, el volcado de núcleo del sistema y un colector instantáneo en la señal del usuario, se debe proporcionar la siguiente opción a JVM al inicio.

-Xdump:java+heap+system+snap:events=user

Nota: los archivos de volcado del sistema deben procesarse utilizando la herramienta jextract y la salida debe enviarse al soporte de IBM. El jextract de la misma JVM que experimentó el problema debe usarse para procesar el volcado del núcleo del sistema:

<JAVA_HOME>/jre/bin/jextract <dumpfile>

Donde dumpfile es el nombre de archivo del volcado del núcleo del sistema.

Esto producirá un archivo zip .zip. El archivo zip debe enviarse al soporte de IBM.