summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@verizonmedia.com>2019-07-29 16:42:09 +0200
committerGitHub <noreply@github.com>2019-07-29 16:42:09 +0200
commit5892041c3cf705ce479c8bccfcb83d6281945ee7 (patch)
tree3876b626346af54cc42edb5eaba065ec87454380 /configserver
parente36cd3e8019db574b0fc718177d01a34574a2fdd (diff)
parent2442a786e602a96548e57f8f67b07446f72f7bb5 (diff)
Merge pull request #10115 from vespa-engine/ogronnesby/log-on-metrics-retrieval-failure
Log when we get parse failures from metrics service response
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/MetricsResponse.java2
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/metrics/MetricsRetriever.java8
2 files changed, 9 insertions, 1 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/MetricsResponse.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/MetricsResponse.java
index 88971433a01..0abc59f54b2 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/MetricsResponse.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/MetricsResponse.java
@@ -36,7 +36,7 @@ public class MetricsResponse extends HttpResponse {
MetricsAggregator aggregator = entry.getValue();
Cursor metrics = cluster.setObject("metrics");
- aggregator.aggregateQueryRate().ifPresent(queryrate -> metrics.setDouble("queriesPerSecond", queryrate));
+ aggregator.aggregateQueryRate().ifPresent(queryRate -> metrics.setDouble("queriesPerSecond", queryRate));
aggregator.aggregateFeedRate().ifPresent(feedRate -> metrics.setDouble("feedPerSecond", feedRate));
aggregator.aggregateDocumentCount().ifPresent(documentCount -> metrics.setDouble("documentCount", documentCount));
aggregator.aggregateQueryLatency().ifPresent(queryLatency -> metrics.setDouble("queryLatency",queryLatency));
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/MetricsRetriever.java b/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/MetricsRetriever.java
index 0881d32b21e..01255fb5c2e 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/MetricsRetriever.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/MetricsRetriever.java
@@ -15,6 +15,7 @@ import java.io.InputStream;
import java.io.UncheckedIOException;
import java.net.URI;
import java.time.Instant;
+import java.util.logging.Logger;
/**
@@ -25,6 +26,7 @@ import java.time.Instant;
* @author ogronnesby
*/
public class MetricsRetriever {
+ private static final Logger log = Logger.getLogger(MetricsRetriever.class.getName());
private final HttpClient httpClient = HttpClientBuilder.create().build();
/**
@@ -39,6 +41,12 @@ public class MetricsRetriever {
private void getHostMetrics(URI hostURI, MetricsAggregator metrics) {
Slime responseBody = doMetricsRequest(hostURI);
+ var parseError = responseBody.get().field("error_message");
+
+ if (parseError.valid()) {
+ log.info("Failed to retrieve metrics from " + hostURI + ": " + parseError.asString());
+ }
+
Inspector services = responseBody.get().field("services");
services.traverse((ArrayTraverser) (i, servicesInspector) -> {
parseService(servicesInspector, metrics);