summaryrefslogtreecommitdiff
path: root/cmds/statsd/src/metrics/MetricsManager.cpp
diff options
context:
space:
mode:
authorJeffrey Huang <jeffreyhuang@google.com>2020-03-23 13:42:42 -0700
committerJeffrey Huang <jeffreyhuang@google.com>2020-03-31 19:10:58 -0700
commitb8f5403d1753e793d95a5134384aff1a937e6cec (patch)
tree0203e04b922e62edd53a592434103598fb114efc /cmds/statsd/src/metrics/MetricsManager.cpp
parentdd8e9d8044dc1451bdfc26766a8b911f6af761a3 (diff)
Save metadata to Disk
Bug: 148280505 Test: bit statsd_test:* Change-Id: Ib9c6b9b4f22e7380717b480c7ae4a37bb3364619
Diffstat (limited to 'cmds/statsd/src/metrics/MetricsManager.cpp')
-rw-r--r--cmds/statsd/src/metrics/MetricsManager.cpp20
1 files changed, 18 insertions, 2 deletions
diff --git a/cmds/statsd/src/metrics/MetricsManager.cpp b/cmds/statsd/src/metrics/MetricsManager.cpp
index fca48f96f56d..9e9b6ff8f7df 100644
--- a/cmds/statsd/src/metrics/MetricsManager.cpp
+++ b/cmds/statsd/src/metrics/MetricsManager.cpp
@@ -560,8 +560,24 @@ void MetricsManager::writeActiveConfigToProtoOutputStream(
}
}
-
-
+bool MetricsManager::writeMetadataToProto(int64_t currentWallClockTimeNs,
+ int64_t systemElapsedTimeNs,
+ metadata::StatsMetadata* statsMetadata) {
+ bool metadataWritten = false;
+ metadata::ConfigKey* configKey = statsMetadata->mutable_config_key();
+ configKey->set_config_id(mConfigKey.GetId());
+ configKey->set_uid(mConfigKey.GetUid());
+ for (const auto& anomalyTracker : mAllAnomalyTrackers) {
+ metadata::AlertMetadata* alertMetadata = statsMetadata->add_alert_metadata();
+ bool alertWritten = anomalyTracker->writeAlertMetadataToProto(currentWallClockTimeNs,
+ systemElapsedTimeNs, alertMetadata);
+ if (!alertWritten) {
+ statsMetadata->mutable_alert_metadata()->RemoveLast();
+ }
+ metadataWritten |= alertWritten;
+ }
+ return metadataWritten;
+}
} // namespace statsd
} // namespace os