diff options
author | Ola Aunrønning <olaa@verizonmedia.com> | 2019-07-29 16:42:09 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-29 16:42:09 +0200 |
commit | 5892041c3cf705ce479c8bccfcb83d6281945ee7 (patch) | |
tree | 3876b626346af54cc42edb5eaba065ec87454380 | |
parent | e36cd3e8019db574b0fc718177d01a34574a2fdd (diff) | |
parent | 2442a786e602a96548e57f8f67b07446f72f7bb5 (diff) |
Merge pull request #10115 from vespa-engine/ogronnesby/log-on-metrics-retrieval-failure
Log when we get parse failures from metrics service response
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/MetricsResponse.java | 2 | ||||
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/metrics/MetricsRetriever.java | 8 |
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); |