From 7f3afcb4d074b5f038d1fe204bd1cbc24c88b0a1 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Tue, 12 Jul 2022 14:33:49 +0200 Subject: Pass total cost through controller --- .../controller/api/integration/configserver/NodeRepoStats.java | 9 ++++++++- .../api/integration/noderepository/NodeRepoStatsData.java | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) (limited to 'controller-api') 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; - public NodeRepoStats(Load load, Load activeLoad, List applicationStats) { + public NodeRepoStats(double totalCost, double totalAllocatedCost, + Load load, Load activeLoad, List 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() { 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 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())); } -- cgit v1.2.3