Class MetricsTimeVaryingRate
java.lang.Object
com.mapr.org.apache.hadoop.metrics.util.MetricsBase
com.mapr.org.apache.hadoop.metrics.util.MetricsTimeVaryingRate
The MetricsTimeVaryingRate class is for a rate based metric that
naturally varies over time (e.g. time taken to create a file).
The rate is averaged at each interval heart beat (the interval
is set in the metrics config file).
This class also keeps track of the min and max rates along with
a method to reset the min-max.
-
Field Summary
Fields inherited from class com.mapr.org.apache.hadoop.metrics.util.MetricsBase
NO_DESCRIPTION -
Constructor Summary
ConstructorsConstructorDescriptionMetricsTimeVaryingRate(String nam, MetricsRegistry registry) Constructor - create a new metricMetricsTimeVaryingRate(String nam, MetricsRegistry registry, String description) Constructor - create a new metric -
Method Summary
Modifier and TypeMethodDescriptionlongThe max time for a single operation since the last resetresetMinMax()longThe min time for a single operation since the last resetresetMinMax()longThe average rate of an operation in the previous intervalintThe number of operations in the previous intervalvoidinc(int numOps, long time) Increment the metrics for numOps operationsvoidinc(long time) Increment the metrics for one operationvoidPush the delta metrics to the mr.voidReset the min max valuesMethods inherited from class com.mapr.org.apache.hadoop.metrics.util.MetricsBase
getDescription, getName
-
Constructor Details
-
MetricsTimeVaryingRate
Constructor - create a new metric- Parameters:
nam- the name of the metrics to be used to publish the metricregistry- - where the metrics object will be registered
-
MetricsTimeVaryingRate
Constructor - create a new metric- Parameters:
nam- the name of the metrics to be used to publish the metricregistry- - where the metrics object will be registered A description ofMetricsBase.NO_DESCRIPTIONis used
-
-
Method Details
-
inc
public void inc(int numOps, long time) Increment the metrics for numOps operations- Parameters:
numOps- - number of operationstime- - time for numOps operations
-
inc
public void inc(long time) Increment the metrics for one operation- Parameters:
time- for one operation
-
pushMetric
Push the delta metrics to the mr. The delta is since the last push/interval. Note this does NOT push to JMX (JMX gets the info viagetPreviousIntervalAverageTime()andgetPreviousIntervalNumOps()- Specified by:
pushMetricin classMetricsBase- Parameters:
mr-
-
getPreviousIntervalNumOps
public int getPreviousIntervalNumOps()The number of operations in the previous interval- Returns:
- - ops in prev interval
-
getPreviousIntervalAverageTime
public long getPreviousIntervalAverageTime()The average rate of an operation in the previous interval- Returns:
- - the average rate.
-
getMinTime
public long getMinTime()The min time for a single operation since the last resetresetMinMax()- Returns:
- min time for an operation
-
getMaxTime
public long getMaxTime()The max time for a single operation since the last resetresetMinMax()- Returns:
- max time for an operation
-
resetMinMax
public void resetMinMax()Reset the min max values
-