summaryrefslogtreecommitdiff
path: root/cmds/statsd/src/metrics/MetricsManager.cpp
diff options
context:
space:
mode:
authorOlivier Gaillard <gaillard@google.com>2019-02-20 09:57:33 +0000
committerOlivier Gaillard <gaillard@google.com>2019-02-20 17:59:50 +0000
commit6c75ecdcef7ae0acb17c512f5bc086bba89ed123 (patch)
treea33705c9a3f174bb786e783a21ab798aedafa00f /cmds/statsd/src/metrics/MetricsManager.cpp
parentfe71582e237ffdd791e2de13217747bb5e58934c (diff)
Introduces an option to set a dump latency requirement.
We are currently dumping invalid data for pulled metrics. Pulled metrics require a new pull when flushing a bucket. We should either do another pull or invalidate the previous bucket. There are cases where we cannot afford to do another pull, e.g. statsd being killed. If we do not have enough time, we'll just invalidte the bucket to make sure we have correct data. Bug: 123866830 Test: atest statsd_test Change-Id: I090127cace3b7265032ebb2c9bddae976c883771
Diffstat (limited to 'cmds/statsd/src/metrics/MetricsManager.cpp')
-rw-r--r--cmds/statsd/src/metrics/MetricsManager.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/cmds/statsd/src/metrics/MetricsManager.cpp b/cmds/statsd/src/metrics/MetricsManager.cpp
index 4851a8d40baa..4b3bfd3c8b86 100644
--- a/cmds/statsd/src/metrics/MetricsManager.cpp
+++ b/cmds/statsd/src/metrics/MetricsManager.cpp
@@ -217,6 +217,7 @@ void MetricsManager::dropData(const int64_t dropTimeNs) {
void MetricsManager::onDumpReport(const int64_t dumpTimeStampNs,
const bool include_current_partial_bucket,
const bool erase_data,
+ const DumpLatency dumpLatency,
std::set<string> *str_set,
ProtoOutputStream* protoOutput) {
VLOG("=========================Metric Reports Start==========================");
@@ -227,10 +228,10 @@ void MetricsManager::onDumpReport(const int64_t dumpTimeStampNs,
FIELD_TYPE_MESSAGE | FIELD_COUNT_REPEATED | FIELD_ID_METRICS);
if (mHashStringsInReport) {
producer->onDumpReport(dumpTimeStampNs, include_current_partial_bucket, erase_data,
- str_set, protoOutput);
+ dumpLatency, str_set, protoOutput);
} else {
producer->onDumpReport(dumpTimeStampNs, include_current_partial_bucket, erase_data,
- nullptr, protoOutput);
+ dumpLatency, nullptr, protoOutput);
}
protoOutput->end(token);
} else {