This is an automated email from the ASF dual-hosted git repository.
ritesh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git
The following commit(s) were added to refs/heads/master by this push:
new f782b64022 Add new metrics and amend test cases with them (#5905)
f782b64022 is described below
commit f782b6402212746175abdc472d818aa880723c9d
Author: Zita Dombi <[email protected]>
AuthorDate: Tue Jan 2 19:15:18 2024 +0100
Add new metrics and amend test cases with them (#5905)
---
.../main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java | 4 ++++
.../main/java/org/apache/hadoop/hdds/scm/node/SCMNodeMetrics.java | 4 ++++
.../java/org/apache/hadoop/hdds/scm/node/TestSCMNodeManager.java | 4 ++++
.../java/org/apache/hadoop/ozone/scm/node/TestSCMNodeMetrics.java | 6 ++++++
4 files changed, 18 insertions(+)
diff --git
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java
index e2cce7ac09..e9b7d220e1 100644
---
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java
+++
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java
@@ -1044,6 +1044,8 @@ public class SCMNodeManager implements NodeManager {
nodeInfo.put(s.label + stat.name(), 0L);
}
}
+ nodeInfo.put("TotalCapacity", 0L);
+ nodeInfo.put("TotalUsed", 0L);
for (DatanodeInfo node : nodeStateManager.getAllNodes()) {
String keyPrefix = "";
@@ -1078,6 +1080,8 @@ public class SCMNodeManager implements NodeManager {
nodeInfo.compute(keyPrefix + UsageMetrics.SSDUsed.name(),
(k, v) -> v + reportProto.getScmUsed());
}
+ nodeInfo.compute("TotalCapacity", (k, v) -> v +
reportProto.getCapacity());
+ nodeInfo.compute("TotalUsed", (k, v) -> v + reportProto.getScmUsed());
}
}
return nodeInfo;
diff --git
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeMetrics.java
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeMetrics.java
index 472085fe09..bbf927fe27 100644
---
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeMetrics.java
+++
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeMetrics.java
@@ -135,6 +135,7 @@ public final class SCMNodeMetrics implements MetricsSource {
public void getMetrics(MetricsCollector collector, boolean all) {
Map<String, Map<String, Integer>> nodeCount = managerMXBean.getNodeCount();
Map<String, Long> nodeInfo = managerMXBean.getNodeInfo();
+ int totalNodeCount = 0;
/**
* Loop over the Node map and create a metric for the cross product of all
* Operational and health states, ie:
@@ -152,8 +153,11 @@ public final class SCMNodeMetrics implements MetricsSource
{
StringUtils.camelize(e.getKey() + "_" + h.getKey() + "_nodes"),
"Number of " + e.getKey() + " " + h.getKey() + " datanodes"),
h.getValue());
+ totalNodeCount += h.getValue();
}
}
+ metrics.addGauge(
+ Interns.info("AllNodes", "Number of datanodes"), totalNodeCount);
for (Map.Entry<String, Long> e : nodeInfo.entrySet()) {
metrics.addGauge(
diff --git
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/node/TestSCMNodeManager.java
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/node/TestSCMNodeManager.java
index 24e8d5bc4f..f99669f3e6 100644
---
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/node/TestSCMNodeManager.java
+++
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/node/TestSCMNodeManager.java
@@ -1982,6 +1982,10 @@ public class TestSCMNodeManager {
assertEquals(2000, stats.get("MaintenanceDiskCapacity").longValue());
assertEquals(100, stats.get("MaintenanceDiskUsed").longValue());
assertEquals(1900, stats.get("MaintenanceDiskRemaining").longValue());
+
+ // All nodes
+ assertEquals(12000, stats.get("TotalCapacity").longValue());
+ assertEquals(600, stats.get("TotalUsed").longValue());
}
/**
diff --git
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/scm/node/TestSCMNodeMetrics.java
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/scm/node/TestSCMNodeMetrics.java
index 41a32cef43..a16914a796 100644
---
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/scm/node/TestSCMNodeMetrics.java
+++
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/ozone/scm/node/TestSCMNodeMetrics.java
@@ -253,6 +253,12 @@ public class TestSCMNodeMetrics {
getMetrics(SCMNodeMetrics.class.getSimpleName()));
assertGauge("DecommissionedSSDRemaining", 0L,
getMetrics(SCMNodeMetrics.class.getSimpleName()));
+ assertGauge("AllNodes", 1,
+ getMetrics(SCMNodeMetrics.class.getSimpleName()));
+ assertGauge("TotalCapacity", 100L,
+ getMetrics(SCMNodeMetrics.class.getSimpleName()));
+ assertGauge("TotalUsed", 10L,
+ getMetrics(SCMNodeMetrics.class.getSimpleName()));
LayoutVersionManager versionManager =
nodeManager.getLayoutVersionManager();
LayoutVersionProto layoutInfo = LayoutVersionProto.newBuilder()
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]