You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by el...@apache.org on 2014/12/04 19:02:30 UTC
accumulo git commit: Use MutableCounter and (extended) MutableStats
for update metric elements
Repository: accumulo
Updated Branches:
refs/heads/metrics2-backwardscompat a056b1ca0 -> f3f8dc467
Use MutableCounter and (extended) MutableStats for update metric elements
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/f3f8dc46
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/f3f8dc46
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/f3f8dc46
Branch: refs/heads/metrics2-backwardscompat
Commit: f3f8dc467e6d6cdf82c6bbfe4a2269191dcca351
Parents: a056b1c
Author: Josh Elser <el...@apache.org>
Authored: Thu Dec 4 13:01:50 2014 -0500
Committer: Josh Elser <el...@apache.org>
Committed: Thu Dec 4 13:02:14 2014 -0500
----------------------------------------------------------------------
.../Metrics2TabletServerUpdateMetrics.java | 34 ++++++++++++++++++--
1 file changed, 32 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f3f8dc46/server/tserver/src/main/java/org/apache/accumulo/tserver/metrics/Metrics2TabletServerUpdateMetrics.java
----------------------------------------------------------------------
diff --git a/server/tserver/src/main/java/org/apache/accumulo/tserver/metrics/Metrics2TabletServerUpdateMetrics.java b/server/tserver/src/main/java/org/apache/accumulo/tserver/metrics/Metrics2TabletServerUpdateMetrics.java
index a8e0ad4..f883b60 100644
--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/metrics/Metrics2TabletServerUpdateMetrics.java
+++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/metrics/Metrics2TabletServerUpdateMetrics.java
@@ -23,6 +23,8 @@ import org.apache.hadoop.metrics2.MetricsSource;
import org.apache.hadoop.metrics2.MetricsSystem;
import org.apache.hadoop.metrics2.lib.Interns;
import org.apache.hadoop.metrics2.lib.MetricsRegistry;
+import org.apache.hadoop.metrics2.lib.MutableCounterLong;
+import org.apache.hadoop.metrics2.lib.MutableStat;
/**
*
@@ -32,14 +34,42 @@ public class Metrics2TabletServerUpdateMetrics implements Metrics, MetricsSource
private final MetricsSystem system;
private final MetricsRegistry registry;
+ private final MutableCounterLong permissionErrors, unknownTabletErrors, constraintViolations;
+ private final MutableStat commitPrep, walogWriteTime, commitTime, mutationArraySize;
+
public Metrics2TabletServerUpdateMetrics(MetricsSystem system) {
this.system = system;
this.registry = new MetricsRegistry(Interns.info("UpdateMetrics", "TabletServer Update Metrics"));
+
+ permissionErrors = registry.newCounter(Interns.info(TabletServerUpdateMetricsMBean.permissionErrors, "Permission Errors"), 0l);
+ unknownTabletErrors = registry.newCounter(Interns.info(TabletServerUpdateMetricsMBean.unknownTabletErrors, "Unknown Tablet Errors"), 0l);
+ constraintViolations = registry.newCounter(Interns.info(TabletServerUpdateMetricsMBean.constraintViolations, "Table Constraint Violations"), 0l);
+
+ commitPrep = registry.newStat(TabletServerUpdateMetricsMBean.commitPrep, "preparing to commit mutations", "Ops", "Time", true);
+ walogWriteTime = registry.newStat(TabletServerUpdateMetricsMBean.waLogWriteTime, "writing mutations to WAL", "Ops", "Time", true);
+ commitTime = registry.newStat(TabletServerUpdateMetricsMBean.commitTime, "committing mutations", "Ops", "Time", true);
+ mutationArraySize = registry.newStat(TabletServerUpdateMetricsMBean.mutationArraySize, "mutation array", "ops", "Size", true);
}
@Override
- public void add(String name, long time) {
- registry.add(name, time);
+ public void add(String name, long value) {
+ if (TabletServerUpdateMetricsMBean.permissionErrors.equals(name)) {
+ permissionErrors.incr(value);
+ } else if (TabletServerUpdateMetricsMBean.unknownTabletErrors.equals(name)) {
+ unknownTabletErrors.incr(value);
+ } else if (TabletServerUpdateMetricsMBean.mutationArraySize.equals(name)) {
+ mutationArraySize.add(value);
+ } else if (TabletServerUpdateMetricsMBean.commitPrep.equals(name)) {
+ commitPrep.add(value);
+ } else if (TabletServerUpdateMetricsMBean.constraintViolations.equals(name)) {
+ constraintViolations.incr(value);
+ } else if (TabletServerUpdateMetricsMBean.waLogWriteTime.equals(name)) {
+ walogWriteTime.add(value);
+ } else if (TabletServerUpdateMetricsMBean.commitTime.equals(name)) {
+ commitTime.add(value);
+ } else {
+ throw new RuntimeException("Cannot process metric with name " + name);
+ }
}
@Override