Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
import org.apache.hadoop.metrics2.lib.MutableCounterLong;
import org.apache.hadoop.ozone.OzoneConfigKeys;
import org.apache.hadoop.util.PerformanceMetrics;
import org.apache.hadoop.util.PerformanceMetricsInitializer;

/**
* The client metrics for the Storage Container protocol.
Expand Down Expand Up @@ -76,7 +75,7 @@ public void init() {
"number of" + ContainerProtos.Type.forNumber(i + 1) + " ops",
(long) 0);
containerOpsLatency[i] =
PerformanceMetricsInitializer.getMetrics(registry,
new PerformanceMetrics(registry,
ContainerProtos.Type.forNumber(i + 1) + "Latency",
"latency of " + ContainerProtos.Type.forNumber(i + 1),
"Ops", "Time", intervals);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,18 +56,21 @@ public static synchronized <T> void initializeMetrics(T source,
}

/**
* Construct an instance of PerformanceMetrics with the specified MutableStat,
* MutableQuantiles, and MutableMinMax.
* Helper method to create PerformanceMetrics.
*
* @param stat the stat metric
* @param quantiles the quantiles metrics
* @param minMax the min/max tracker
* @param registry the metrics registry
* @param name metric name
* @param description metric description
* @param sampleName sample name
* @param valueName value name
* @param intervals intervals for quantiles
*/
public PerformanceMetrics(MutableStat stat,
List<MutableQuantiles> quantiles, MutableMinMax minMax) {
this.stat = stat;
this.quantiles = quantiles;
this.minMax = minMax;
public PerformanceMetrics(
MetricsRegistry registry, String name, String description,
String sampleName, String valueName, int[] intervals) {
stat = registry.newStat(name, description, sampleName, valueName, false);
quantiles = MetricUtil.createQuantiles(registry, name, description, sampleName, valueName, intervals);
minMax = new MutableMinMax(registry, name, description, valueName);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,34 +50,12 @@ public static <T> void initialize(T source, MetricsRegistry registry,
String description = annotation.about();
String name = field.getName();
PerformanceMetrics performanceMetrics =
getMetrics(registry, name, description,
new PerformanceMetrics(registry, name, description,
sampleName, valueName, intervals);
field.setAccessible(true);
field.set(source, performanceMetrics);
}
}
}
}

/**
* Helper method to create PerformanceMetrics.
*
* @param registry the metrics registry
* @param name metric name
* @param description metric description
* @param sampleName sample name
* @param valueName value name
* @param intervals intervals for quantiles
* @return an instance of PerformanceMetrics
*/
public static PerformanceMetrics getMetrics(
MetricsRegistry registry, String name, String description,
String sampleName, String valueName, int[] intervals) {
return new PerformanceMetrics(
registry.newStat(
name, description, sampleName, valueName, false),
MetricUtil.createQuantiles(
registry, name, description, sampleName, valueName, intervals),
new MutableMinMax(registry, name, description, valueName));
}
}