summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@yahooinc.com>2022-08-05 15:16:29 +0200
committerHåkon Hallingstad <hakon@yahooinc.com>2022-08-05 15:16:29 +0200
commite77c830792a9e6a452e6f632e90afb1c3f39ab88 (patch)
tree1786d1b017bcbd21dc3914e34fec3b8063b20f20
parentafb107c1c1222548cfeb08ad4591a99a74724226 (diff)
true
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java17
1 files changed, 7 insertions, 10 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java
index cdf2dcd514d..a371cdcde25 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java
@@ -115,19 +115,14 @@ public class NodeAdminImpl implements NodeAdmin {
public void updateMetrics(boolean isSuspended) {
long numContainers = 0;
long totalContainerMemoryBytes = 0;
- final long invalidTotalContainerMemoryBytes = -1;
for (NodeAgentWithScheduler nodeAgentWithScheduler : nodeAgentWithSchedulerByHostname.values()) {
- ++numContainers;
int count = nodeAgentWithScheduler.getAndResetNumberOfUnhandledExceptions();
if (!isSuspended) numberOfUnhandledExceptions.add(count);
Optional<ContainerStats> containerStats = nodeAgentWithScheduler.updateContainerNodeMetrics(isSuspended);
- if (totalContainerMemoryBytes != invalidTotalContainerMemoryBytes) {
- if (containerStats.isPresent()) {
- totalContainerMemoryBytes += containerStats.get().getMemoryStats().getUsage();
- } else {
- totalContainerMemoryBytes = invalidTotalContainerMemoryBytes;
- }
+ if (containerStats.isPresent()) {
+ ++numContainers;
+ totalContainerMemoryBytes += containerStats.get().getMemoryStats().getUsage();
}
}
@@ -139,8 +134,10 @@ public class NodeAdminImpl implements NodeAdmin {
jvmHeapFree.sample(freeMemory);
jvmHeapUsed.sample(usedMemory);
jvmHeapTotal.sample(totalMemory);
- containerCount.sample(numContainers);
- if (totalContainerMemoryBytes != invalidTotalContainerMemoryBytes) {
+
+ // No container stats are found while suspended, so skip setting these if so.
+ if (!isSuspended) {
+ containerCount.sample(numContainers);
ProcMeminfo meminfo = procMeminfoReader.read();
memoryOverhead.sample(meminfo.memTotalBytes() - meminfo.memAvailableBytes() - totalContainerMemoryBytes);
}