org.glassfish.jersey.server.monitoring
Interface TimeWindowStatistics

All Known Implementing Classes:
TimeWindowStatisticsImpl

public interface TimeWindowStatistics

Monitoring statistics of execution of any target (resource, resource method, application). The main parameter of TimeWindowStatistics is the size of the time window. This is the time for which the statistics are measured (for example for time window 1 hour, the statistics are evaluated for last one hour and older statistics are dropped). The size of the time window can be retrieved by getTimeWindow().

Statistics retrieved from Jersey runtime might be mutable and thanks to it might provide inconsistent data as not all statistics are updated in the same time. To retrieve the immutable and consistent statistics data the method snapshot() should be used.

Author:
Miroslav Fuksa (miroslav.fuksa at oracle.com)
See Also:
See monitoring statistics for general details about statistics.

Method Summary
 long getAverageDuration()
          Returns the average duration (processing time) in milliseconds of the request processing measured in the time window.
 long getMaximumDuration()
          Returns the maximum duration (processing time) in milliseconds of the request processing measured in the time window.
 long getMinimumDuration()
          Returns the minimum duration (processing time) in milliseconds of the request processing measured in the time window.
 long getRequestCount()
          Returns the count of requests received measured in the time window.
 double getRequestsPerSecond()
          Returns average value of how many requests per second were received by application in the time window.
 long getTimeWindow()
          Returns the size of time window in milliseconds.
 TimeWindowStatistics snapshot()
          Get the immutable and consistent snapshot of the monitoring statistics.
 

Method Detail

getTimeWindow

long getTimeWindow()
Returns the size of time window in milliseconds. Returned value denotes in how many last milliseconds the statistics are evaluated.

Returns:
Time window in milliseconds.

getRequestsPerSecond

double getRequestsPerSecond()
Returns average value of how many requests per second were received by application in the time window.

Returns:
Average of requests per second.

getMinimumDuration

long getMinimumDuration()
Returns the minimum duration (processing time) in milliseconds of the request processing measured in the time window. The time measures the processing of the request since the start of request processing by Jersey until the response is written or request processing fails and all resources for request processing are released.

Returns:
Minimum processing time of the request or -1 if no request has been processed.

getMaximumDuration

long getMaximumDuration()
Returns the maximum duration (processing time) in milliseconds of the request processing measured in the time window. processing of the request since the start of request processing by Jersey until the response is written or request processing fails and all resources for request processing are released.

Returns:
Maximum processing time of the request or -1 if no request has been processed.

getAverageDuration

long getAverageDuration()
Returns the average duration (processing time) in milliseconds of the request processing measured in the time window. The time measures the processing of the request since the start of request processing by Jersey until the response is written or request processing fails and all resources for request processing are released.

Returns:
Average processing time of the request or -1 if no request has been processed.

getRequestCount

long getRequestCount()
Returns the count of requests received measured in the time window.

Returns:
Count of requests that were handled by the application.

snapshot

TimeWindowStatistics snapshot()
Get the immutable and consistent snapshot of the monitoring statistics. Working with snapshots might have negative performance impact as snapshot must be created but ensures consistency of data over time. However, the usage of snapshot is encouraged to avoid working with inconsistent data. Not all statistics must be updated in the same time on mutable version of statistics.

Returns:
Snapshot of time window statistics.


Copyright © 2007-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.