Jetty/Tutorial/Statistics
Contents
Introduction
Jetty allows collecting several types of statistics. This tutorial shows how to configure Jetty to enable collecting statistics, although it is not recommended and it is best to use a JMX agent to select statistics only when needed.
Details
Connector statistics
The following example shows how to turn on connector statistics in jetty.xml.
<Item> <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> </New> </Item>
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. Jetty distribution contains a configuration file etc/jetty-stats.xml that allows injecting the StatisticsHandler into existing jetty configuration by specifying it on the command line. Please note that jetty-stats.xml has to appear in the command line after the main Jetty configuration file as shown below.
> java -jar start.jar OPTIONS=default etc/jetty.xml etc/jetty-stats.xml
Alternately, if you are making multiple changes to the Jetty configuration, you could include statistics handler configuration into your jetty.xml. The following 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> </Array> </Set> </New> </Set> </New> </Set>
Session Statistics
Session statistics are enabled by default and do not need to be configured.
Additional Resources
See Jetty JMX tutorial for instructions on how to configure Jetty JMX integration.