test online gceasy collector collection java performance logging garbage-collection

java - online - gceasy



¿Conoce alguna herramienta de análisis de registro de recolección de basura de Java? (12)

Estoy buscando una herramienta o una secuencia de comandos que tomará el registro de la consola desde mi aplicación web, analizar la información de la recolección de basura y mostrarla de una manera significativa.

Estoy comenzando con una JVM Sun Java 1.4.2 con los siguientes indicadores:

-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails

La salida de registro se ve así:

54.736: [Full GC 54.737: [Tenured: 172798K->18092K(174784K), 2.3792658 secs] 257598K->18092K(259584K), [Perm : 20476K->20476K(20480K)], 2.4715398 secs]

Dar sentido a algunos cientos de este tipo de entradas de registro sería mucho más fácil si tuviera una herramienta que graficara visualmente las tendencias de recolección de basura.


¿Qué le parece probar alguna herramienta de creación de perfiles como JProbe Freeware (Eclipse plug-in)?



El complemento gchisto para VisualVM no funciona gchisto

Tengo un archivo con todos los detalles de printgc para jdk1.6 pero no pude encontrar una herramienta para leer eso. Previamente con jdk1.5 usamos HPjmeter, funcionó bien, pero ahora con jdk1.6 no funciona

Probé lo siguiente: IBM Pattern Modeling and Analysis Tool para Java Garbage Collector: no reconoce el archivo. GCCollector no funciona, sigue leyendo el archivo para su análisis.



Hace unos años, John Coomes (grupo de Hotspot GC) había publicado PrintGCStats, un script awk para "resumir las estadísticas sobre la recolección de basura, en particular los totales de tiempo de pausa, los promedios, los máximos y las desviaciones estándar". Una copia del script está alojada en java.net: http://java.net/projects/printgcstats


Incluso mejor que jconsole es visualvm , que visualvm desarrolla y distribuye libremente. Tiene un complemento de análisis de GC llamado gchisto que podría ayudarte.

Editar: Lo siento, no vi su requisito de JDK 1.4.2. En ese caso, visualvm no te ayudará, ¡ay!


La herramienta más poderosa que he encontrado para trabajar con los registros JVM de IBM y Hotspot y visualizarlos es el PMAT de IBM: https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=22d56091-3a7b-4497-b36e-634b51838e11

Lo encuentro más rápido y proporciona más detalles que la herramienta en IBM Support Assistant. Se está actualizando continuamente, por último julio''12.

Sin embargo, parece tener algunos problemas para analizar los registros con la política CMS, pero espero que se pueda solucionar.

PrintGCStats también es bastante bueno y ofrece buenas estadísticas, pero no para la visualización en el tiempo, que necesita algo de trabajo.


Probé una herramienta en línea http://gceasy.io , puede leer mi registro de sol jdk 1.8 gc.


Pruebe VisualGC desde Sun. Hay versiones JDK 4 y 5 que le dan una buena visión de lo que está sucediendo en los espacios eden, generational y perm. Necesitas agregar un JAR y obtener un PID y Bob es tu tío.


Yo uso YourKit java profiler , que te permite medir este tipo de cosas, y mucho más, pero usando su propio formato en lugar de analizar el registro. Puede hacer más en Java 5, pero debería funcionar por debajo de 1.4.


jconsole puede ayudarte mucho, pero creo que es solo Java 5 y versiones posteriores. Una vez escuché a alguien de SUN hablando en nuestra universidad y dijo que el recolector de basura de Java 6 es MUCHO mejor que los viejos, que necesitaban ajustes complicados casi todo el tiempo para grandes aplicaciones. Java 6 GC parece escalar mucho mejor en SMP.