Banear

domingo, 16 de diciembre de 2012

Monitorización Servidor Java (JavaMelody)

Javamelody a diferencia de JProfile, es una herramienta con licencia LGPL con la que podréis sacar informes sobre el consumo de recursos de vuestra aplicación.

Aquí os dejo la configuración básica para monitorizar una aplicación web Java desplegada en servidor. Si vuestro proyecto no está mavenizado, tendréis que añadir al classpath las librerías asociadas. Podéis ver como hacerlo en: https://code.google.com/p/javamelody/wiki/UserGuide?tm=6

En el pom.xml pegáis esto:

<!-- javamelody-core -->
        <dependency>
                <groupId>net.bull.javamelody</groupId>
                <artifactId>javamelody-core</artifactId>
                <version>1.41.0</version>
        </dependency>
        <!-- itext, option to add PDF export -->
        <dependency>
                <groupId>com.lowagie</groupId>
                <artifactId>itext</artifactId>
                <version>2.1.7</version>
                <exclusions>
                        <exclusion>
                                <artifactId>bcmail-jdk14</artifactId>
                                <groupId>bouncycastle</groupId>
                        </exclusion>
                        <exclusion>
                                <artifactId>bcprov-jdk14</artifactId>
                                <groupId>bouncycastle</groupId>
                        </exclusion>
                        <exclusion>
                                <artifactId>bctsp-jdk14</artifactId>
                                <groupId>bouncycastle</groupId>
                        </exclusion>
                </exclusions>
        </dependency>

<dependency>
                <groupId>com.thoughtworks.xstream</groupId>
                <artifactId>xstream</artifactId>
                <version>1.4.2</version>
        </dependency>
        <dependency>
                <groupId>org.jrobin</groupId>
                <artifactId>jrobin</artifactId>
                <version>1.5.9</version>
        </dependency>

En el web.xml ponéis esto:

<filter>
                <filter-name>monitoring</filter-name>
                <filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
        </filter>
        <filter-mapping>
                <filter-name>monitoring</filter-name>
                <url-pattern>/*</url-pattern>
        </filter-mapping>
        <listener>
                <listener-class>net.bull.javamelody.SessionListener</listener-class>
        </listener>

Levantáis el servidor y tecleáis en el navegador esta ruta:

http://<host>/<context>/monitoring (Ejemplo: http://localhost:8090/myproject/monitoring)

Para más información:

https://code.google.com/p/javamelody/

Con JavaMelody podéis ver "cómodamente", qué objetos existen en las sesiones de los usuarios, cuánto ocupan, el número de veces que se ejecuta cada consulta a BD, el tiempo que consume dicha consulta, la carga en cada momento del servidor, exportar informes y bastantes opciones más.

También ofrece la posibilidad de securizar el servicio de monitorización y de programar el envío de informes a las direcciones de correo que le indiquéis. 

No hay comentarios:

Publicar un comentario