summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-07-12 14:33:49 +0200
committerJon Bratseth <bratseth@gmail.com>2022-07-12 14:33:49 +0200
commit7f3afcb4d074b5f038d1fe204bd1cbc24c88b0a1 (patch)
tree3738a8ac98e2fd6580269090a934cf4b04b9ba2a /controller-api
parent548b8ed3214c5c637017038f837b3cc527de7045 (diff)
Pass total cost through controller
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepoStats.java9
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepoStatsData.java9
2 files changed, 16 insertions, 2 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepoStats.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepoStats.java
index 68ebc5e86aa..5ddf5aaff28 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepoStats.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepoStats.java
@@ -8,16 +8,23 @@ import java.util.List;
*/
public class NodeRepoStats {
+ private final double totalCost;
+ private final double totalAllocatedCost;
private final Load load;
private final Load activeLoad;
private final List<ApplicationStats> applicationStats;
- public NodeRepoStats(Load load, Load activeLoad, List<ApplicationStats> applicationStats) {
+ public NodeRepoStats(double totalCost, double totalAllocatedCost,
+ Load load, Load activeLoad, List<ApplicationStats> applicationStats) {
+ this.totalCost = totalCost;
+ this.totalAllocatedCost = totalAllocatedCost;
this.load = load;
this.activeLoad = activeLoad;
this.applicationStats = List.copyOf(applicationStats);
}
+ public double totalCost() { return totalCost; }
+ public double totalAllocatedCost() { return totalAllocatedCost; }
public Load load() { return load; }
public Load activeLoad() { return activeLoad; }
public List<ApplicationStats> applicationStats() { return applicationStats; }
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepoStatsData.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepoStatsData.java
index 36677143f7a..75ac919f776 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepoStatsData.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepoStatsData.java
@@ -16,6 +16,12 @@ import java.util.stream.Collectors;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class NodeRepoStatsData {
+ @JsonProperty("totalCost")
+ public Double totalCost;
+
+ @JsonProperty("totalAllocatedCost")
+ public Double totalAllocatedCost;
+
@JsonProperty("load")
public LoadData load;
@@ -26,7 +32,8 @@ public class NodeRepoStatsData {
public List<ApplicationStatsData> applications;
public NodeRepoStats toNodeRepoStats() {
- return new NodeRepoStats(load.toLoad(), activeLoad.toLoad(),
+ return new NodeRepoStats(totalCost, totalAllocatedCost,
+ load.toLoad(), activeLoad.toLoad(),
applications.stream().map(stats -> stats.toApplicationStats()).collect(Collectors.toList()));
}