Tuesday, March 3, 2009

PerformaSure® and GlassFish

All applications require a deeper understanding of what is happening under the hood. In comes Quest's product PerformaSure®. I recently have been working with an Insurance outsourcing company which made a intelligent choice to move from Weblogic and use GlassFish. I am sure there are "religious" individuals who will read this blog and have a different opinion. But, for the price and breath of products GlassFish is a better a choice.

Quest has not made a specific installation document for installing the x-agent for Glassfish on Solaris. I have pieced some different documents to come up with a successful installation. I will in the next few paragraphs outline my process. I would like to help anyone avoid my time waster.

  1. You need to install the PerformaSure® product. Make sure the user which GlassFish uses can also access the PerformaSure® installation.

  2. Execute
    sh "${PERFORMASURE_HOME}/scripts/preinstrumentor.sh" "${JAVA_HOME}"
    This is important because it will create a jar file in the bootstrap directory which will be need as a jvm entry. The output should like:

    makeboot
    preinstrument
    2009-03-03 16:06:33.451 INFO Loading Agent startup configuration from /opt/que
    st/PerformaSure4.4/config/agent.config
    2009-03-03 16:06:33.841 INFO PerformaSure 4.4.2 (Build PAS_442-20061219-0110)
    on SunOS uxapt06 5.10 Generic_137137-09 sun4u sparc SUNW,Sun-Fire-V245
    using Sun Microsystems Inc. Java HotSpot(TM) Client VM version 1.5.0_15-b04
    (extra info: mixed mode, sharing); Agent Type: Preinstrumentor
    2009-03-03 16:06:33.841 INFO Configured to connect to Nexus at
    NTQPP01:41705
    2009-03-03 16:06:34.060 INFO Connected to Nexus at NTQPP01:41705
    2009-03-03 16:06:34.812 INFO Agent started
    2009-03-03 16:06:34.812 INFO Creating bootstrap classes in
    /opt/quest/PerformaSure4.4/bootstrap/-apps-jdk1.5.0_15.jar
    2009-03-03 16:06:37.530 INFO Preinstrumentation complete
    2009-03-03 16:06:37.550 INFO Preinstrumentor Agent shutdown completed
    done

  3. There are four(4) jvm options you will need to add to the config. If you are running as a cluster it could be called Config1. If you are running as a single server use server config. Below is an image of the console and the parameters:








The jvm options look like:
  • -javaagent:/opt/quest/PerformaSure4.4/lib/performasure-agent.jar
  • -Dperformasure.debug=0
  • -Xbootclasspath/p:/opt/quest/PerformaSure4.4/bootstrap/-yourapps-SUNWapp9_1u2-jdk.jar
  • -Dperformasure.agent.appserverinfo=ServerName06:Generic:SunAS9
4. To ensure the changes are operational make sure to only start one instance first.


Below are the two sites which helped me get over my hurdle
http://developers.sun.com/appserver/reference/techart/performasure.html
http://antognini.ch/category/apmtools/performasure/

Roque Martinez is a Enterprise Architect with experience in Financial, Insurance and Independent Software developement. Roque is the founder of RM Technology Systems LLC, www.rmtechsys.com and can be reached at rmartinez@rmtechsys.com.