summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-04-24 23:41:45 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2017-04-24 23:41:45 +0200
commit21703df86c2bd7558636108362ff206fd4439f3a (patch)
treee96127c6fc9d77f7185b2d07a4915cde2b5f3a09 /storage
parent8cbba246fcc23b3cd1eab0186f800769b69d9cd7 (diff)
Add missing files.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/vespa/storage/storageserver/communicationmanagermetrics.cpp32
-rw-r--r--storage/src/vespa/storage/storageserver/storagemetricsset.cpp77
2 files changed, 109 insertions, 0 deletions
diff --git a/storage/src/vespa/storage/storageserver/communicationmanagermetrics.cpp b/storage/src/vespa/storage/storageserver/communicationmanagermetrics.cpp
new file mode 100644
index 00000000000..d1e71b6e8a5
--- /dev/null
+++ b/storage/src/vespa/storage/storageserver/communicationmanagermetrics.cpp
@@ -0,0 +1,32 @@
+// Copyright 2017 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+#include "communicationmanagermetrics.h"
+#include <vespa/documentapi/loadtypes/loadtypeset.h>
+
+using namespace metrics;
+namespace storage {
+
+CommunicationManagerMetrics::CommunicationManagerMetrics(const LoadTypeSet& loadTypes, MetricSet* owner)
+ : MetricSet("communication", "", "Metrics for the communication manager", owner),
+ queueSize("messagequeue", "", "Size of input message queue.", this),
+ messageProcessTime(loadTypes,
+ DoubleAverageMetric("messageprocesstime", "",
+ "Time transport thread uses to process a single message"),
+ this),
+ exceptionMessageProcessTime(loadTypes,
+ DoubleAverageMetric("exceptionmessageprocesstime", "",
+ "Time transport thread uses to process a single message "
+ "that fails with an exception thrown into communication manager"),
+ this),
+ failedDueToTooLittleMemory("toolittlememory", "", "Number of messages failed due to too little memory available", this),
+ convertToStorageAPIFailures("convertfailures", "",
+ "Number of messages that failed to get converted to storage API messages", this),
+ sendCommandLatency("sendcommandlatency", "", "Average ms used to send commands to MBUS", this),
+ sendReplyLatency("sendreplylatency", "", "Average ms used to send replies to MBUS", this)
+{
+}
+
+CommunicationManagerMetrics::~CommunicationManagerMetrics() { }
+
+}
+
diff --git a/storage/src/vespa/storage/storageserver/storagemetricsset.cpp b/storage/src/vespa/storage/storageserver/storagemetricsset.cpp
new file mode 100644
index 00000000000..aa57e3ebcd5
--- /dev/null
+++ b/storage/src/vespa/storage/storageserver/storagemetricsset.cpp
@@ -0,0 +1,77 @@
+// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+#include "storagemetricsset.h"
+#include <vespa/document/fieldvalue/serializablearray.h>
+
+namespace storage {
+
+MessageMemoryUseMetricSet::MessageMemoryUseMetricSet(metrics::MetricSet* owner)
+ : metrics::MetricSet("message_memory_use", "memory", "Message use from storage messages", owner),
+ total("total", "memory", "Message use from storage messages", this),
+ lowpri("lowpri", "memory", "Message use from low priority storage messages", this),
+ normalpri("normalpri", "memory", "Message use from normal priority storage messages", this),
+ highpri("highpri", "memory", "Message use from high priority storage messages", this),
+ veryhighpri("veryhighpri", "memory", "Message use from very high priority storage messages", this)
+{ }
+MessageMemoryUseMetricSet::~MessageMemoryUseMetricSet() {}
+
+DocumentSerializationMetricSet::DocumentSerializationMetricSet(metrics::MetricSet* owner)
+ : metrics::MetricSet("document_serialization", "docserialization",
+ "Counts of document serialization of various types", owner),
+ usedCachedSerializationCount(
+ "cached_serialization_count", "docserialization",
+ "Number of times we didn't need to serialize the document as "
+ "we already had serialized version cached", this),
+ compressedDocumentCount(
+ "compressed_serialization_count", "docserialization",
+ "Number of times we compressed document when serializing",
+ this),
+ compressionDidntHelpCount(
+ "compressed_didnthelp_count", "docserialization",
+ "Number of times we compressed document when serializing, but "
+ "the compressed version was bigger, so it was dumped", this),
+ uncompressableCount(
+ "uncompressable_serialization_count", "docserialization",
+ "Number of times we didn't attempt compression as document "
+ "had already been tagged uncompressable", this),
+ serializedUncompressed(
+ "uncompressed_serialization_count", "docserialization",
+ "Number of times we serialized a document uncompressed", this),
+ inputWronglySerialized(
+ "input_wrongly_serialized_count", "docserialization",
+ "Number of times we reserialized a document because the "
+ "compression it had in cache did not match what was configured",
+ this)
+{ }
+DocumentSerializationMetricSet::~DocumentSerializationMetricSet() { }
+
+StorageMetricSet::StorageMetricSet()
+ : metrics::MetricSet("server", "memory",
+ "Metrics for VDS applications"),
+ memoryUse("memoryusage", "memory", "", this),
+ memoryUse_messages(this),
+ memoryUse_visiting("memoryusage_visiting", "memory",
+ "Message use from visiting", this),
+ documentSerialization(this)
+{ }
+StorageMetricSet::~StorageMetricSet() { }
+
+void StorageMetricSet::updateMetrics() {
+ document::SerializableArray::Statistics stats(
+ document::SerializableArray::getStatistics());
+
+ documentSerialization.usedCachedSerializationCount.set(
+ stats._usedCachedSerializationCount);
+ documentSerialization.compressedDocumentCount.set(
+ stats._compressedDocumentCount);
+ documentSerialization.compressionDidntHelpCount.set(
+ stats._compressionDidntHelpCount);
+ documentSerialization.uncompressableCount.set(
+ stats._uncompressableCount);
+ documentSerialization.serializedUncompressed.set(
+ stats._serializedUncompressed);
+ documentSerialization.inputWronglySerialized.set(
+ stats._inputWronglySerialized);
+}
+
+} // storage