summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Cluster.java16
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ClusterUtilizationData.java10
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java3
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java2
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application-clusters.json11
5 files changed, 29 insertions, 13 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Cluster.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Cluster.java
index 07de259be2f..b3317c7f268 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Cluster.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Cluster.java
@@ -77,29 +77,35 @@ public class Cluster {
public static class Utilization {
- private final double cpu, idealCpu, memory, idealMemory, disk, idealDisk;
+ private final double cpu, idealCpu, currentCpu, memory, idealMemory, currentMemory, disk, idealDisk, currentDisk;
- public Utilization(double cpu, double idealCpu,
- double memory, double idealMemory,
- double disk, double idealDisk) {
+ public Utilization(double cpu, double idealCpu, double currentCpu,
+ double memory, double idealMemory, double currentMemory,
+ double disk, double idealDisk, double currentDisk) {
this.cpu = cpu;
this.idealCpu = idealCpu;
+ this.currentCpu = currentCpu;
this.memory = memory;
this.idealMemory = idealMemory;
+ this.currentMemory = currentMemory;
this.disk = disk;
this.idealDisk = idealDisk;
+ this.currentDisk = currentDisk;
}
public double cpu() { return cpu; }
public double idealCpu() { return idealCpu; }
+ public double currentCpu() { return currentCpu; }
public double memory() { return memory; }
public double idealMemory() { return idealMemory; }
+ public double currentMemory() { return currentMemory; }
public double disk() { return disk; }
public double idealDisk() { return idealDisk; }
+ public double currentDisk() { return currentDisk; }
- public static Utilization empty() { return new Utilization(0, 0, 0, 0, 0, 0); }
+ public static Utilization empty() { return new Utilization(0, 0, 0, 0, 0, 0, 0, 0, 0); }
}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ClusterUtilizationData.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ClusterUtilizationData.java
index 0465a1037e8..47cb80a98e2 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ClusterUtilizationData.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ClusterUtilizationData.java
@@ -6,8 +6,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yahoo.vespa.hosted.controller.api.integration.configserver.Cluster;
-import java.time.Instant;
-
/**
* Utilization ratios
*
@@ -21,19 +19,25 @@ public class ClusterUtilizationData {
public Double cpu;
@JsonProperty("idealCpu")
public Double idealCpu;
+ @JsonProperty("currentCpu")
+ public Double currentCpu;
@JsonProperty("memory")
public Double memory;
@JsonProperty("idealMemory")
public Double idealMemory;
+ @JsonProperty("currentMemory")
+ public Double currentMemory;
@JsonProperty("disk")
public Double disk;
@JsonProperty("idealDisk")
public Double idealDisk;
+ @JsonProperty("currentDisk")
+ public Double currentDisk;
public Cluster.Utilization toClusterUtilization() {
- return new Cluster.Utilization(cpu, idealCpu, memory, idealMemory, disk, idealDisk);
+ return new Cluster.Utilization(cpu, idealCpu, currentCpu, memory, idealMemory, currentMemory, disk, idealDisk, currentDisk);
}
}
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
index ae4d891069c..7fcf7554452 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
@@ -2092,10 +2092,13 @@ public class ApplicationApiHandler extends AuditLoggingRequestHandler {
private void utilizationToSlime(Cluster.Utilization utilization, Cursor utilizationObject) {
utilizationObject.setDouble("cpu", utilization.cpu());
utilizationObject.setDouble("idealCpu", utilization.idealCpu());
+ utilizationObject.setDouble("currentCpu", utilization.currentCpu());
utilizationObject.setDouble("memory", utilization.memory());
utilizationObject.setDouble("idealMemory", utilization.idealMemory());
+ utilizationObject.setDouble("currentMemory", utilization.currentMemory());
utilizationObject.setDouble("disk", utilization.disk());
utilizationObject.setDouble("idealDisk", utilization.idealDisk());
+ utilizationObject.setDouble("currentDisk", utilization.currentDisk());
}
private void scalingEventsToSlime(List<Cluster.ScalingEvent> scalingEvents, Cursor scalingEventsArray) {
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java
index 9e15f2ec788..c3a527a0bd9 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java
@@ -117,7 +117,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer
current,
Optional.of(new ClusterResources(2, 1, new NodeResources(3, 8, 50, 1, slow, remote))),
Optional.empty(),
- new Cluster.Utilization(0.1, 0.2, 0.3, 0.4, 0.5, 0.6),
+ new Cluster.Utilization(0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9),
List.of(new Cluster.ScalingEvent(new ClusterResources(0, 0, NodeResources.unspecified()),
current,
Instant.ofEpochMilli(1234),
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application-clusters.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application-clusters.json
index 9df83cb2089..cd1fe5acf6a 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application-clusters.json
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application-clusters.json
@@ -57,10 +57,13 @@
"utilization": {
"cpu": 0.1,
"idealCpu": 0.2,
- "memory": 0.3,
- "idealMemory": 0.4,
- "disk": 0.5,
- "idealDisk": 0.6
+ "currentCpu": 0.3,
+ "memory": 0.4,
+ "idealMemory": 0.5,
+ "currentMemory": 0.6,
+ "disk": 0.7,
+ "idealDisk": 0.8,
+ "currentDisk": 0.9
},
"scalingEvents": [
{