1 package org.apache.geronimo.jetty; 2 3 import javax.management.j2ee.statistics.CountStatistic; 4 import javax.management.j2ee.statistics.RangeStatistic; 5 import javax.management.j2ee.statistics.TimeStatistic; 6 7 import org.apache.geronimo.management.stats.CountStatisticImpl; 8 import org.apache.geronimo.management.stats.RangeStatisticImpl; 9 import org.apache.geronimo.management.stats.StatisticImpl; 10 import org.apache.geronimo.management.stats.StatsImpl; 11 import org.apache.geronimo.management.stats.TimeStatisticImpl; 12 13 /** 14 * Jetty implementation of the Geronimo stats interface WebContainerStats 15 * 16 * @version $Revision: 1.0$ 17 */ 18 public class JettyWebContainerStatsImpl extends StatsImpl implements JettyWebContainerStats { 19 private CountStatisticImpl totalConnectionCount; 20 private RangeStatisticImpl openConnectionCount; 21 private RangeStatisticImpl connectionRequestCount; 22 private TimeStatisticImpl connectionDuration; 23 private CountStatisticImpl totalErrorCount; 24 private CountStatisticImpl totalRequestCount; 25 private RangeStatisticImpl activeRequestCount; 26 private TimeStatisticImpl requestDuration; 27 private boolean statsOn=false; 28 29 public JettyWebContainerStatsImpl() { 30 totalConnectionCount = new CountStatisticImpl("Total Connections", StatisticImpl.UNIT_COUNT, 31 "The total number of connections since last reset"); 32 openConnectionCount = new RangeStatisticImpl("Open Connections", StatisticImpl.UNIT_COUNT, 33 "The number of connections open at present"); 34 connectionRequestCount = new RangeStatisticImpl("Connection Request Count", StatisticImpl.UNIT_COUNT, 35 "The number of requests handled by a particular connection"); 36 connectionDuration = new TimeStatisticImpl("Connection Duration", StatisticImpl.UNIT_TIME_MILLISECOND, 37 "The legnth of time that individual connections have been open"); 38 totalErrorCount = new CountStatisticImpl("Error Count", StatisticImpl.UNIT_COUNT, 39 "The number of reponses that were errors since statistics gathering started"); 40 totalRequestCount = new CountStatisticImpl("Request Count", StatisticImpl.UNIT_COUNT, 41 "The number of requests that were handled since statistics gathering started"); 42 activeRequestCount = new RangeStatisticImpl("Active Request Count", StatisticImpl.UNIT_COUNT, 43 "The number of requests being processed concurrently"); 44 requestDuration = new TimeStatisticImpl("Request Duration", StatisticImpl.UNIT_TIME_MILLISECOND, 45 "The length of time that it's taken to handle individual requests"); 46 47 addStat("TotalConnectionCount", totalConnectionCount); 48 addStat("OpenConnectionCount", openConnectionCount); 49 addStat("ConnectionRequestCount", connectionRequestCount); 50 addStat("ConnectionDuration", connectionDuration); 51 addStat("TotalErrorCount", totalErrorCount); 52 addStat("TotalRequestCount", totalRequestCount); 53 addStat("ActiveRequestCount", activeRequestCount); 54 addStat("RequestDuration", requestDuration); 55 } 56 57 public CountStatistic getTotalConnectionCount() { 58 return totalConnectionCount; 59 } 60 61 public RangeStatistic getOpenConnectionCount() { 62 return openConnectionCount; 63 } 64 65 public RangeStatistic getConnectionRequestCount() { 66 return connectionRequestCount; 67 } 68 69 public TimeStatistic getConnectionDuration() { 70 return connectionDuration; 71 } 72 73 public CountStatistic getTotalErrorCount() { 74 return totalErrorCount; 75 } 76 77 public CountStatistic getTotalRequestCount() { 78 return totalRequestCount; 79 } 80 81 public RangeStatistic getActiveRequestCount() { 82 return activeRequestCount; 83 } 84 85 public TimeStatistic getRequestDuration() { 86 return requestDuration; 87 } 88 89 public boolean isStatsOn() { 90 return statsOn; 91 } 92 93 public void setStatsOn(boolean on) { 94 statsOn = on; 95 } 96 97 public CountStatisticImpl getTotalConnectionCountImpl() { 98 return totalConnectionCount; 99 } 100 101 public RangeStatisticImpl getOpenConnectionCountImpl() { 102 return openConnectionCount; 103 } 104 105 public RangeStatisticImpl getConnectionRequestCountImpl() { 106 return connectionRequestCount; 107 } 108 109 public TimeStatisticImpl getConnectionDurationImpl() { 110 return connectionDuration; 111 } 112 113 public CountStatisticImpl getTotalErrorCountImpl() { 114 return totalErrorCount; 115 } 116 117 public CountStatisticImpl getTotalRequestCountImpl() { 118 return totalRequestCount; 119 } 120 121 public RangeStatisticImpl getActiveRequestCountImpl() { 122 return activeRequestCount; 123 } 124 125 public TimeStatisticImpl getRequestDurationImpl() { 126 return requestDuration; 127 } 128 }