summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorten Tokle <morten.tokle@gmail.com>2017-11-22 14:54:57 +0100
committerGitHub <noreply@github.com>2017-11-22 14:54:57 +0100
commit1cfd4e1f30db81d466d0dd51d5f1329a99556eb9 (patch)
treea869bb97941ba83b7228f2e5c0bcadb5e2d56e8d
parent397f06055509e87ce149b4d4bb7821b6a5eb85c7 (diff)
parent316efe53a61a9f5dbb66aeb72300048b64809349 (diff)
Merge pull request #4242 from vespa-engine/bratseth/count-prod-only
Count prod only
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporter.java8
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java3
2 files changed, 8 insertions, 3 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporter.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporter.java
index 3d0cd284c55..01e53ce4f79 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporter.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporter.java
@@ -9,6 +9,7 @@ import com.yahoo.vespa.hosted.controller.api.integration.chef.AttributeMapping;
import com.yahoo.vespa.hosted.controller.api.integration.chef.Chef;
import com.yahoo.vespa.hosted.controller.api.integration.chef.rest.PartialNode;
import com.yahoo.vespa.hosted.controller.api.integration.chef.rest.PartialNodeResult;
+import com.yahoo.vespa.hosted.controller.application.ApplicationList;
import java.time.Clock;
import java.time.Duration;
@@ -102,9 +103,12 @@ public class MetricsReporter extends Maintainer {
}
private double deploymentFailRatio() {
- List<Application> applications = controller().applications().asList();
+ List<Application> applications = ApplicationList.from(controller().applications().asList())
+ .notPullRequest()
+ .hasProductionDeployment()
+ .asList();
if (applications.isEmpty()) return 0;
-
+
return (double)applications.stream().filter(a -> a.deploymentJobs().hasFailures()).count() /
(double)applications.size();
}
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
index 621e189ba37..a7458f9f8ed 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
@@ -71,7 +71,7 @@ public class MetricsReporterTest {
metricsReporter.maintain();
assertEquals(0.0, metricsMock.getMetric(MetricsReporter.deploymentFailMetric));
- // Deploy 3 apps successfully
+ // Deploy all apps successfully
Application app1 = tester.createApplication("app1", "tenant1", 1, 11L);
Application app2 = tester.createApplication("app2", "tenant1", 2, 22L);
Application app3 = tester.createApplication("app3", "tenant1", 3, 33L);
@@ -79,6 +79,7 @@ public class MetricsReporterTest {
tester.deployCompletely(app1, applicationPackage);
tester.deployCompletely(app2, applicationPackage);
tester.deployCompletely(app3, applicationPackage);
+ tester.deployCompletely(app4, applicationPackage);
metricsReporter.maintain();
assertEquals(0.0, metricsMock.getMetric(MetricsReporter.deploymentFailMetric));