Page 1 of 2 12 LastLast
Results 1 to 10 of 16

Thread: Please Recommend Monitoring/Management Tools

  1. #1

    Default Please Recommend Monitoring/Management Tools

    I work at a small shop, and we've been discussing general user help desk type support. As a result we're looking more into monitoring sessions and their states. Along with internal metrics of the core system. I am familiar with JMX and currently have several MBeans exported. However, this gives me no insight into individual sessions. Anyone help with that issue?

    Also, are there any other tools that may be helpful in day-to-day administration of our Spring-based apps - or even just our Tomcat container? Of course integrating easily with Spring is a huge advantage.

    Let me know what you use and what advantages it provides you in your administration. What about help with troublshooting? Metrics?

    Currently I run jconsole and jprobe.

    Thanks for any input!

  2. #2
    Join Date
    Oct 2008
    Location
    Melbourne, Florida
    Posts
    83

    Default Re: Please Recommend Monitoring/Management Tools

    pbdavey,

    It sounds like you are looking for what SpringSource Application Management Suite (SpringSource AMS) provides out of the box. It gives a great visibility into your Spring web apps.

    Here is the datasheet, which provides a good summary of what SpringSource AMS does. SpringSource AMS Datasheet


    Jason

  3. #3

    Default Looking into AMS...have problem...

    So I've downloaded and installed the AMS server and agent. In development, I was able to start my application with the instrumented jars. I was also able to deploy to Tomcat this application and view it through jconsole. Tons of new MBeans are there.

    The problem is that the agent reports:
    Code:
    2009-03-02 16:29:59,753 ERROR [Thread-1] [RuntimeAutodiscoverer] Unexpected error running autodiscoverer for plugin: Tomcat 5.5: Unable to get MBean info: No
     JMX URL configured
    org.hyperic.hq.product.PluginException: Unable to get MBean info: No JMX URL configured
            at org.hyperic.hq.plugin.servlet.ServletDiscoveryPlugin.getMBeanInfo(ServletDiscoveryPlugin.java:111)
            at org.hyperic.hq.plugin.servlet.Tomcat55RuntimeADPlugin.discoverResources(Tomcat55RuntimeADPlugin.java:76)
    I'm not sure where to put the JMX URL. In the section "Instrumenting YOur Application for Management with AMS#Instrumenting-deploy", if says I should verify in the log that it was discovered...but as above, I have the error in the agent.log. Any ideas?

  4. #4
    Join Date
    Oct 2008
    Location
    Melbourne, Florida
    Posts
    83

    Default RE: Looking into AMS...have problem...

    Not really sure of your problem, so wanted to get a better understanding:

    - What OS?
    - What version of tomcat are you using?

    - Where you able to log into AMS? By default it should be http://<machine>:7080.

    - Did your tomcat get autodiscovered? (Note:There is an built-in tomcat 5.5 in AMS also that gets discovered)

    - If it was discovered.. check that AMS autodiscovered your jmx.url, once AMS discovers your tomcat and you have "Add to Inventory" from the dashboard, you should be able to go to Resources -> Browse. There you can select your tomcat instance. Once you are looking at your tomcat instance, you can select the Inventory tab. Then select the "Configuration Properties" topic slider -> Make sure the JMX.url is correct.


    -Jason

  5. #5

    Default

    The text is embedded in bold -

    Quote Originally Posted by Jason Konicki View Post
    Not really sure of your problem, so wanted to get a better understanding:

    - What OS?
    RHEL 4
    - What version of tomcat are you using?
    5.5.27
    - Where you able to log into AMS? By default it should be http://<machine>:7080.
    Yes
    - Did your tomcat get autodiscovered? (Note:There is an built-in tomcat 5.5 in AMS also that gets discovered)
    In Auto-Discovery, I see AMS Agent 2.0.0.RC1 and AMS Tomcat 5.5, so I don't think so, which is why I was wondering if the agent exception meant I was supposed to register the jmx url somewhere in the agent.
    - If it was discovered.. check that AMS autodiscovered your jmx.url, once AMS discovers your tomcat and you have "Add to Inventory" from the dashboard, you should be able to go to Resources -> Browse. There you can select your tomcat instance. Once you are looking at your tomcat instance, you can select the Inventory tab. Then select the "Configuration Properties" topic slider -> Make sure the JMX.url is correct.


    -Jason

  6. #6
    Join Date
    Oct 2008
    Location
    Melbourne, Florida
    Posts
    83

    Default

    Your tomcat 5.5.27 should be auto-discovered without a problem.. The jmx.url is not a factor in the auto-discovery, it is used for the retrieving metrics, service info, etc.

    Are you starting tomcat in any unique way? Or are you just using the catalina.sh?

    AMS does a process scan and looks for the following information on the process:
    1. -Dcatalina.home=<somecatalinahome>
    2. -Dcatalina.base=<somecatalinabase>
    3. Whether the following file exists <catalina.home>/server/lib/catalina-storeconfig.jar

    Please verify that all of the above criteria exist. I have tested my tomcat5.5.27 from a direct download and it worked fine.

    Note: By default the agent does an auto-discovery search every 15 mins, if you would like to speed this up you can change the default in agent.properties or the on-demand way is to restart the agent (which is fairly fast). Then you should see the new auto-discovered item in dashboard after a couple mins.

  7. #7

    Default

    Thank you, "starting tomcat in any unique way" is what got me. I'm using jsvc to start Tomcat at runlevel 3. So now I'll look through docs again and post any other issues. I fixed up catalina.sh and it picked right up.

    I would like to know (since jsvc is our preferred way of auto-starting Tomcat) if there is a way...or maybe jsvc isn't starting quite as cleanly as I thought.


    Quote Originally Posted by Jason Konicki View Post
    Your tomcat 5.5.27 should be auto-discovered without a problem.. The jmx.url is not a factor in the auto-discovery, it is used for the retrieving metrics, service info, etc.

    Are you starting tomcat in any unique way? Or are you just using the catalina.sh?

    AMS does a process scan and looks for the following information on the process:
    1. -Dcatalina.home=<somecatalinahome>
    2. -Dcatalina.base=<somecatalinabase>
    3. Whether the following file exists <catalina.home>/server/lib/catalina-storeconfig.jar

    Please verify that all of the above criteria exist. I have tested my tomcat5.5.27 from a direct download and it worked fine.

    Note: By default the agent does an auto-discovery search every 15 mins, if you would like to speed this up you can change the default in agent.properties or the on-demand way is to restart the agent (which is fairly fast). Then you should see the new auto-discovered item in dashboard after a couple mins.

  8. #8

    Default

    So AMS seems to be running fine. I can see a lot of internals to my Spring app in AMS...looks good. Except for one minor detail, the app doesn't appear to be producing statistics. Via jconsole, I can look at different MBeans and the values are just not right. I have certain controllers that I know I've gone through with everything turned on, and they report 0 RequestsHandled. Very strange...not quite sure what to make of it other than I think something must be wrong in the Tomcat setup, since the raw MBeans don't seem to be reporting things. MonitoringEnabled is set to true.

    The only setup on Tomcat I've done other than enable jmx is replace the jar files (which explains all the spring.application Mbeans I have). Is there anything else that should be done to enable MBean metrics collection?

  9. #9
    Join Date
    Oct 2008
    Location
    Melbourne, Florida
    Posts
    83

    Default

    After a quick look at jsvc, I think the easiest way would be to add both the -Dcatalina.home=<catalinahome> and -Dcatalina.base=<catalinabase> properties to the current system properties being passed in to jsvc ( there should be an example in the native directory of <catalinahome>bin/jsvc/native/tomcat.sh). The agent should find it due to it having those properties.

    I will open a jira to investigate jsvc further.

  10. #10

    Default

    re: your controllers not showing metrics in JConsole - are these components annotated with @Controller? If so, do you have other components under spring.application aside from annotated ones that you think are not updating properly?

    Thanks,
    Jennifer

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •