History | Log In     View a printable version of the current page. Get help!  
Issue Details (XML | Word)

Key: JBPAPP-210
Type: Bug Bug
Status: Closed Closed
Resolution: Done
Priority: Major Major
Assignee: Joshua Wulf
Reporter: Jaroslaw Kijanowski
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
JBoss Enterprise Platform App Edition

Tomcat instrumenting instructions don't show up when managed by a windows agent

Created: 05/Jun/07 06:33 PM   Updated: 13/Jun/07 12:47 PM
Component/s: Documentation
Affects Version/s: 4.2.RC5
Fix Version/s: 4.2.RC6
Security Level: Public (Everyone can see)

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
When Tomcat is discovered by a windows agent, the instructions showing how to intrument Tomcat don't show up.

This happens with all my windows agents (1.4.16 & 1.4.29) monitoring all my Tomcats (5.5 & 6)

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order:
Jaroslaw Kijanowski [06/Jun/07 03:58 PM]
When the JON agent is running on a windows box and the JON server on a Linux box, instructions showing how to instrument Tomcat don't show up.

However, you can follow these instructions to instrument Tomcat for monitoring:

Configure Tomcat 6.0 JBoss embedded for Monitoring

NOTE: If you are monitoring JON's internal Tomcat, these steps are not necessary.

To enable monitoring of Tomcat servers and services the Tomcat server must be instrumented using a filter to collect metrics and a webapp to deliver the metric data into JON. The web application, filter and any additional jars are packaged in the JON agent directory under product_connectors\servlet. All commands below should be issued from this directory.

The first step to making Tomcat monitorable is to install the filter and webapp. These are used to collect internal Tomcat metrics.

   copy libs\hq-filter.jar %JBOSS_HOME%\server\{default | all|\deploy\jboss-web.deployer


Next, deploy the jbnem-monitor webapp in your JBoss server:

   xcopy /E jbnem-monitor %JBOSS_HOME%\server\{default | all}\deploy\jboss-web.deployer\..\jbnem-monitor.war\


Finally, the filter must be enabled. The following must be added to %JBOSS_HOME%\server\{default | all}\deploy\jboss-web.deployer\conf\web.xml. Keep in mind that each tag type must be grouped together.

  <filter>
    <filter-name>JMXFilter</filter-name>

<filter-class>net.hyperic.hq.product.servlet.filter.JMXFilter</filter-class>

    <!-- Uncomment the following line to enable response time logging.
            The directory you specify as the param can include properties
            referenced from the System.properties of the vm.

            The ResponseTime log file will by default store the last 1 hour's
            worth of response time data. This file gets truncated as soon as
            data is succesfully sent into the server. The file is named uniquely
            for each webapp in the form: yourContextName_JBNEMResponseTime.log

            If this fragment is included in the global web.xml for the container,
            all webapps in it will generate response time data, and have logs
            following the format described above. You can enable it individually
            on each webapp as well if you dont want every webapp to generate
            response time data

         -->
    <!--
    <init-param>
      <param-name>responseTimeLogDir</param-name>
      <param-value>%JBOSS_HOME%\jboss-as\server\{default | all}\log</param-value>
    </init-param>
         -->

    <!-- these are optional parameters which you can override to optimize logging -->
    <!--
    <init-param>
      <param-name>bufferSize</param-name>
      <param-value>8k</param-value>
    </init-param>

    <init-param>
      <param-name>bufferTime</param-name>
      <param-value>1h</param-value>
    </init-param>
         -->
  </filter>

  <filter-mapping>
    <filter-name>JMXFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <listener>

<listener-class>net.hyperic.hq.product.servlet.filter.JMXSessionListener</listener-class>
    </listener>

  <servlet>
    <servlet-name>JMXWebappMetricServlet</servlet-name>

<servlet-class>net.hyperic.hq.product.servlet.filter.JMXFilterInitServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>


Jaroslaw Kijanowski [06/Jun/07 04:01 PM]
Due to a bug in JON (JBNADM-1395), these instructions should go into the release notes.

Joshua Wulf [06/Jun/07 07:34 PM]
Release noted. Will be pushed through soon.

Alex Pinkin [11/Jun/07 06:45 PM]
was this pushed through on time for RC6 (06/11)?

Shelly McGowan [11/Jun/07 10:31 PM]
This is in the Release Notes delivered with RC6.