2010-07-16 12 views
6

Necesito hacer un perfil remoto de una JVM para el uso de la CPU, las estadísticas de IO y el conteo de descriptores/manejadores de archivos y soporte las plataformas * NIX y Windows mientras lo hago. Intenté usar la API SIGAR, que abstrae muy bien las plataformas mediante una implementación de código nativo subyacente, pero no admite la creación de perfiles remotos. ¿Hay una API alternativa que pueda hacer esto? Alternativamente, ¿es factible extender el marco SIGAR para el monitoreo remoto de JVM? Cualquier sugerencia sobre dónde mirar sería útil. ¡Gracias por adelantado!Perfilando de forma remota una JVM

Respuesta

2

Que yo sepa, la JVM, en general, se puede configurar para permitir perfiles remoto.

Eclipse TPTP tiene perfiles y capacidades de gráficos agradables, incluso, mencionan la creación de redes en su Data Collection Subsystem

El JVisualVM, que viene con el JDK, también tiene una sección remota.

+0

TPTP ya no se mantiene. = ( – Jolta

1

NetBeans profiler proporciona todo tipo de perfiles, incluidas sesiones remotas. Ver esta página de la documentación para iniciar la depuración remota:

Attaching Profiler to Local or Remote JVM

+0

Esta utilidad no me permite perfilar los parámetros que indiqué. En particular, no me proporciona la capacidad de medir io stats o fd count. –

+0

Mi objeción al perfilador de NetBeans es que estoy perfilando un proceso remoto (rastreo de método) y hace un buen trabajo, pero no me permite guardar el perfil en un archivo para que pueda ser examinado más tarde o por otros. Realmente frustración y omisión flagrante. Puede haber una forma de hacerlo pero he verificado todo lo que puedo. – clearlight

1

Puede probar JProfiler. Aunque es pagado, puede probar la versión de evaluación primero

0

Visual VM ha sido uno de los mejores perfiles y es de código abierto. Lo he estado utilizando para el perfil de JVM y viene con diferentes extensiones para ver diferentes informes.

También intenté integrarme con los servidores WebSphere/Tomcat/Liferay y Glassfish. De hecho, cualquier JVM que tenga habilitada la capacidad de administración remota de JMX será identificada por la VM visual.

De forma predeterminada, Visual VM identifica Sun JVM pero, p. no pudo reconocer IBM JVM. Para cualquier otra JVM que no sea de Sun, deberá habilitar la capacidad de administración remota de JMX para conectarse a la JVM utilizando Visual VM.

+0

No incluya "firmas" en sus publicaciones. Su cuadro de usuario se muestra automáticamente para usted. –

Cuestiones relacionadas