diff options
author | Bookatz <bookatz@google.com> | 2018-02-13 12:26:01 -0800 |
---|---|---|
committer | Bookatz <bookatz@google.com> | 2018-02-14 13:56:25 -0800 |
commit | 1476ef24f33fd9ff7d0e748f61cc964723e6bb1c (patch) | |
tree | 01ddd8cce2a2edbfdecb9146ceed6e292ca99e7d /cmds/statsd/src/metrics/MetricsManager.cpp | |
parent | 07b2dbc2c54d3b436791ea532d5c0d70a3281574 (diff) |
Statsd guardrail for Alerts
Now, each config is allowed at most 100 Alerts in it.
That is, for each uid, for each config id, the config's alert section
can have at most 100 items in it.
Bug: 73287046
Test: none yet
Change-Id: I2c81bc647627e432337c359c0a76aa3fc08bdd23
Diffstat (limited to 'cmds/statsd/src/metrics/MetricsManager.cpp')
-rw-r--r-- | cmds/statsd/src/metrics/MetricsManager.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cmds/statsd/src/metrics/MetricsManager.cpp b/cmds/statsd/src/metrics/MetricsManager.cpp index 66e1aeb8f43e..ddc05c64415a 100644 --- a/cmds/statsd/src/metrics/MetricsManager.cpp +++ b/cmds/statsd/src/metrics/MetricsManager.cpp @@ -92,8 +92,10 @@ MetricsManager::MetricsManager(const ConfigKey& key, const StatsdConfig& config, ALOGE("This config is too big! Reject!"); mConfigValid = false; } - - // TODO: add alert size. + if (mAllAnomalyTrackers.size() > StatsdStats::kMaxAlertCountPerConfig) { + ALOGE("This config has too many alerts! Reject!"); + mConfigValid = false; + } // no matter whether this config is valid, log it in the stats. StatsdStats::getInstance().noteConfigReceived(key, mAllMetricProducers.size(), mAllConditionTrackers.size(), |