Jump to: navigation, search


< Jetty‎ | Feature
Revision as of 08:52, 13 February 2010 by Michael.webtide.com (Talk | contribs) (New page: {{Jetty Feature | introduction = Jetty currently has two levels of request statistic collection: * Subclasses of [http://dev.eclipse.org/viewcvs/index.cgi/jetty/trunk/jetty-server/src/mai...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Jetty currently has two levels of request statistic collection:

In addition to that, subclasses of AbstractSessionHandler optionally can collect session statistics.

To view statistics, you have to be able to connect to Jetty using either JConsole or some other JMX agent. The Statistics Handler is not included in default Jetty configuration, and needs to be configured manually. AbstractConnector and AbstractSessionHandler statistics are turned off by default and must either be configured manually for each individual instance or turned on via JMX interface.


Connector statistics

Detailed statistics on connection duration and number of requests are only collated when a connection is closed. The current and maximum number of connections is the only "live" statistic. The following example shows how to turn on connector statistics in jetty.xml, although this is not recommended and it is best to use a JMX agent to select statistics only when needed.

  <New class="org.mortbay.jetty.nio.SelectChannelConnector">
    <Set name="port">8080</Set>
    <Set name="maxIdleTime">30000</Set>
    <Set name="lowResourceMaxIdleTime">3000</Set>
    <Set name="Acceptors">1</Set>
    <Set name="StatsOn">true</Set>

Request Statistics

To collect request statistics a StatisticsHandler must be configured as one of the handlers of the server. Typically this can be done as the top level handler, but you may choose to configure a statistics handler for just one context by creating a context configuration file. The following jetty.xml fragment shows how to configure a top level statistics handler:

<!-- =========================================================== -->
<!-- Set handler Collection Structure                            -->
<!-- =========================================================== -->
<Set name="handler">
  <New class="org.mortbay.jetty.handler.StatisticsHandler">
    <Set name="handler">
      <New id="handlers" class="org.mortbay.jetty.handler.HandlerCollection">
        <Set name="handlers">
         <Array type="org.mortbay.jetty.Handler">
           <Item><New id="contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/></Item>
           <Item><New id="defaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/></Item>
           <Item><New id="requestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/></Item>

Additional Resources

See Jetty JMX tutorial for instructions on how to configure Jetty JMX integration.