Sitio personal de Ariel M. Liguori De Gottig

Tuesday, April 8

Error en JConsole con Apache-Tomcat 5.5.26

Bueno, los otros dias me encontre con este peculiar error.
Dentro de la red poseemos varios servidores tomcat (v.5.5.26) que brindan diversas aplicaciones. Por tal motivo decidimos emplear el jconsole para monitorear el uso de la memoria, CPU, etc.

El uso del JConsole escondia mas misterios de los que esperaba encontrar.
Primero:
"Supuestamente" con incluir las siguientes lineas en el script del inicio del tomcat (en realidad se modifica el catalina.sh) bastaria:

##########################
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=8004"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=true"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.password.file=/usr/java/jmxremote.password"
##########################
JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx512m -server"

pero, la variable $JAVA_OPTS se ejecuta tanto en el inicio de la aplciación como en el shutdown, lo cual resultaba en un error al realizar el shutdown del tomcat (El error se debia a que no se podia asignar nuevamente el port 8004 ya que estaba en uso).

Solucion a este primer problema:
Utilizar la variable $CATALINA_OPTS, el codigo a agregar quedaria asi:

##########################
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.port=8004"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.authenticate=true"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.password.file=/usr/java/jmxremote.password"
##########################
JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx512m -server"


Listo! tenemos el Jconsole funcionando!!!...

"Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException"

Bueno despues de buscar un poco la respuesta a este caso esta aca: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6432683 y se soluciona con la instalacion de JDK 6 b53.

Saludos.

0 comentarios: