From 25e2a7cf15a760f517182f5fea669168b804e838 Mon Sep 17 00:00:00 2001 From: Geir Storli Date: Thu, 15 Dec 2016 12:59:17 +0100 Subject: Expose document store memory usage metrics. --- .../src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp | 3 ++- .../src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h | 2 ++ searchcore/src/vespa/searchcore/proton/server/documentdb.cpp | 1 + searchcore/src/vespa/searchcore/proton/test/dummy_document_store.h | 1 + 4 files changed, 6 insertions(+), 1 deletion(-) (limited to 'searchcore') diff --git a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp index 4d84dea704b..68580d90974 100644 --- a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp +++ b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp @@ -55,7 +55,8 @@ DocumentDBTaggedMetrics::SubDBMetrics::DocumentStoreMetrics::DocumentStoreMetric : MetricSet("document_store", "", "document store metrics for this document sub DB", parent), diskUsage("disk_usage", "", "Disk space usage in bytes", this), diskBloat("disk_bloat", "", "Disk space bloat in bytes", this), - maxBucketSpread("max_bucket_spread", "", "Max bucket spread in underlying files (sum(unique buckets in each chunk)/unique buckets in file)", this) + maxBucketSpread("max_bucket_spread", "", "Max bucket spread in underlying files (sum(unique buckets in each chunk)/unique buckets in file)", this), + memoryUsage(this) { } diff --git a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h index 68b5be03998..39f4733f66c 100644 --- a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h +++ b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h @@ -2,6 +2,7 @@ #pragma once #include "attribute_metrics.h" +#include "memory_usage_metrics.h" #include #include @@ -47,6 +48,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::LongValueMetric diskUsage; metrics::LongValueMetric diskBloat; metrics::DoubleValueMetric maxBucketSpread; + MemoryUsageMetrics memoryUsage; DocumentStoreMetrics(metrics::MetricSet *parent); }; diff --git a/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp b/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp index 07745e62976..b21d6c1eba8 100644 --- a/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp @@ -1433,6 +1433,7 @@ updateDocumentStoreMetrics(DocumentDBTaggedMetrics::SubDBMetrics:: metrics.diskUsage.set(storageStats.diskUsage()); metrics.diskBloat.set(storageStats.diskBloat()); metrics.maxBucketSpread.set(storageStats.maxBucketSpread()); + metrics.memoryUsage.update(backingStore.getMemoryUsage()); } template diff --git a/searchcore/src/vespa/searchcore/proton/test/dummy_document_store.h b/searchcore/src/vespa/searchcore/proton/test/dummy_document_store.h index 6b165649f1a..2b43546be86 100644 --- a/searchcore/src/vespa/searchcore/proton/test/dummy_document_store.h +++ b/searchcore/src/vespa/searchcore/proton/test/dummy_document_store.h @@ -54,6 +54,7 @@ struct DummyDocumentStore : public search::IDocumentStore virtual search::DataStoreStorageStats getStorageStats() const override { return search::DataStoreStorageStats(0, 0, 0.0, 0, 0); } + virtual search::MemoryUsage getMemoryUsage() const override { return search::MemoryUsage(); } virtual std::vector getFileChunkStats() const override { std::vector result; -- cgit v1.2.3