Interface TimeWindowStatistics
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
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionlong
Returns the average duration (processing time) in milliseconds of the request processing measured in the time window.long
Returns the maximum duration (processing time) in milliseconds of the request processing measured in the time window.long
Returns the minimum duration (processing time) in milliseconds of the request processing measured in the time window.long
Returns the count of requests received measured in the time window.double
Returns average value of how many requests per second were received by application in the time window.long
Returns the size of time window in milliseconds.snapshot()
Deprecated.implementing class is immutable hence snapshot creation is not needed anymore
-
Method Details
-
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
Deprecated.implementing class is immutable hence snapshot creation is not needed anymoreGet 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.
-