diff options
Diffstat (limited to 'cmds/statsd/src/metrics/MetricsManager.h')
-rw-r--r-- | cmds/statsd/src/metrics/MetricsManager.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/cmds/statsd/src/metrics/MetricsManager.h b/cmds/statsd/src/metrics/MetricsManager.h index 6f4db48def86..a4672b68f2bc 100644 --- a/cmds/statsd/src/metrics/MetricsManager.h +++ b/cmds/statsd/src/metrics/MetricsManager.h @@ -16,6 +16,7 @@ #pragma once +#include "external/StatsPullerManager.h" #include "anomaly/AlarmMonitor.h" #include "anomaly/AlarmTracker.h" #include "anomaly/AnomalyTracker.h" @@ -36,9 +37,10 @@ namespace statsd { // A MetricsManager is responsible for managing metrics from one single config source. class MetricsManager : public PackageInfoListener { public: - MetricsManager(const ConfigKey& configKey, const StatsdConfig& config, - const int64_t timeBaseNs, const int64_t currentTimeNs, - const sp<UidMap>& uidMap, const sp<AlarmMonitor>& anomalyAlarmMonitor, + MetricsManager(const ConfigKey& configKey, const StatsdConfig& config, const int64_t timeBaseNs, + const int64_t currentTimeNs, const sp<UidMap>& uidMap, + const sp<StatsPullerManager>& pullerManager, + const sp<AlarmMonitor>& anomalyAlarmMonitor, const sp<AlarmMonitor>& periodicAlarmMonitor); virtual ~MetricsManager(); @@ -105,6 +107,7 @@ public: virtual void onDumpReport(const int64_t dumpTimeNs, const bool include_current_partial_bucket, + const bool erase_data, std::set<string> *str_set, android::util::ProtoOutputStream* protoOutput); @@ -193,6 +196,11 @@ private: // maps from ConditionTracker to MetricProducer std::unordered_map<int, std::vector<int>> mConditionToMetricMap; + // maps from life span triggering event to MetricProducers. + std::unordered_map<int, std::vector<int>> mActivationAtomTrackerToMetricMap; + + std::vector<int> mMetricIndexesWithActivation; + void initLogSourceWhiteList(); // The metrics that don't need to be uploaded or even reported. @@ -205,7 +213,7 @@ private: FRIEND_TEST(GaugeMetricE2eTest, TestMultipleFieldsForPushedEvent); FRIEND_TEST(GaugeMetricE2eTest, TestRandomSamplePulledEvents); FRIEND_TEST(GaugeMetricE2eTest, TestRandomSamplePulledEvent_LateAlarm); - FRIEND_TEST(GaugeMetricE2eTest, TestAllConditionChangesSamplePulledEvents); + FRIEND_TEST(GaugeMetricE2eTest, TestConditionChangeToTrueSamplePulledEvents); FRIEND_TEST(ValueMetricE2eTest, TestPulledEvents); FRIEND_TEST(ValueMetricE2eTest, TestPulledEvents_LateAlarm); FRIEND_TEST(DimensionInConditionE2eTest, TestCreateCountMetric_NoLink_OR_CombinationCondition); @@ -228,6 +236,7 @@ private: FRIEND_TEST(AlarmE2eTest, TestMultipleAlarms); FRIEND_TEST(ConfigTtlE2eTest, TestCountMetric); + FRIEND_TEST(MetricActivationE2eTest, TestCountMetric); }; } // namespace statsd |