diff options
author | Jeffrey Huang <jeffreyhuang@google.com> | 2020-03-23 13:42:42 -0700 |
---|---|---|
committer | Jeffrey Huang <jeffreyhuang@google.com> | 2020-03-31 19:10:58 -0700 |
commit | b8f5403d1753e793d95a5134384aff1a937e6cec (patch) | |
tree | 0203e04b922e62edd53a592434103598fb114efc /cmds/statsd/src/metrics/MetricsManager.cpp | |
parent | dd8e9d8044dc1451bdfc26766a8b911f6af761a3 (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.cpp | 20 |
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 |