Package org.apache.jackrabbit.stats
Class TimeSeriesRecorder
- java.lang.Object
 - 
- org.apache.jackrabbit.stats.TimeSeriesRecorder
 
 
- 
- All Implemented Interfaces:
 TimeSeries
public class TimeSeriesRecorder extends java.lang.Object implements TimeSeries
Recorder of a time series. An instance of this class records (and clears) the state of a givenAtomicLongcounter once every second and exposes the collected time series through theTimeSeriesinterface. 
- 
- 
Constructor Summary
Constructors Constructor Description TimeSeriesRecorder(boolean resetValueEachSecond)Same asTimeSeriesRecorder(boolean, long)passing long for the 2nd argumentTimeSeriesRecorder(boolean resetValueEachSecond, long missingValue)TimeSeriesRecorder(RepositoryStatistics.Type type) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.concurrent.atomic.AtomicLonggetCounter()Returns theAtomicLonginstance used to measure the value for the time series.longgetMissingValue()The value used to encode missing values i.e.long[]getValuePerHour()Returns the measured value per hour over the last week.long[]getValuePerMinute()Returns the measured value per minute over the last hour.long[]getValuePerSecond()Returns the measured value per second over the last minute.long[]getValuePerWeek()Returns the measured value per week over the last three years.voidrecordOneSecond()Records the number of measured values over the past second and resets the counter. 
 - 
 
- 
- 
Constructor Detail
- 
TimeSeriesRecorder
public TimeSeriesRecorder(RepositoryStatistics.Type type)
 
- 
TimeSeriesRecorder
public TimeSeriesRecorder(boolean resetValueEachSecond)
Same asTimeSeriesRecorder(boolean, long)passing long for the 2nd argument- Parameters:
 resetValueEachSecond- Whether to reset value each second
 
- 
TimeSeriesRecorder
public TimeSeriesRecorder(boolean resetValueEachSecond, long missingValue)- Parameters:
 resetValueEachSecond- Whether to reset value each secondmissingValue- The value used to encode missing values
 
 - 
 
- 
Method Detail
- 
getCounter
public java.util.concurrent.atomic.AtomicLong getCounter()
Returns theAtomicLonginstance used to measure the value for the time series.- Returns:
 - value
 
 
- 
recordOneSecond
public void recordOneSecond()
Records the number of measured values over the past second and resets the counter. This method should be scheduled to be called once per second. 
- 
getMissingValue
public long getMissingValue()
Description copied from interface:TimeSeriesThe value used to encode missing values i.e. for a period where no value was recorded.- Specified by:
 getMissingValuein interfaceTimeSeries- Returns:
 - default value
 
 
- 
getValuePerSecond
public long[] getValuePerSecond()
Description copied from interface:TimeSeriesReturns the measured value per second over the last minute.- Specified by:
 getValuePerSecondin interfaceTimeSeries- Returns:
 - measured value per second, in chronological order
 
 
- 
getValuePerMinute
public long[] getValuePerMinute()
Description copied from interface:TimeSeriesReturns the measured value per minute over the last hour.- Specified by:
 getValuePerMinutein interfaceTimeSeries- Returns:
 - measured value per minute, in chronological order
 
 
- 
getValuePerHour
public long[] getValuePerHour()
Description copied from interface:TimeSeriesReturns the measured value per hour over the last week.- Specified by:
 getValuePerHourin interfaceTimeSeries- Returns:
 - measured value per hour, in chronological order
 
 
- 
getValuePerWeek
public long[] getValuePerWeek()
Description copied from interface:TimeSeriesReturns the measured value per week over the last three years.- Specified by:
 getValuePerWeekin interfaceTimeSeries- Returns:
 - measured value per week, in chronological order
 
 
 - 
 
 -