Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5c925ad0 authored by Yao Chen's avatar Yao Chen
Browse files

Sync the DurationMetric proto from google3.

There are other statsd_config changes for Anomaly detection, but requires
code change. So will sync later.

Test: statsd_test
Change-Id: I927e99bd0763cb949fe339993b232f53a4eefe7a
parent a786f00f
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -212,7 +212,7 @@ static StatsdConfig build_fake_config() {
    keyMatcher = durationMetric->add_dimension();
    keyMatcher->set_key(WAKE_LOCK_UID_KEY_ID);
    durationMetric->set_what("WL_HELD_PER_APP_PER_NAME");
    durationMetric->set_predicate("APP_IS_BACKGROUND_AND_SCREEN_ON");
    durationMetric->set_condition("APP_IS_BACKGROUND_AND_SCREEN_ON");
    link = durationMetric->add_links();
    link->set_condition("APP_IS_BACKGROUND");
    link->add_key_in_main()->set_key(WAKE_LOCK_UID_KEY_ID);
@@ -226,7 +226,7 @@ static StatsdConfig build_fake_config() {
    keyMatcher = durationMetric->add_dimension();
    keyMatcher->set_key(WAKE_LOCK_UID_KEY_ID);
    durationMetric->set_what("WL_HELD_PER_APP_PER_NAME");
    durationMetric->set_predicate("APP_IS_BACKGROUND_AND_SCREEN_ON");
    durationMetric->set_condition("APP_IS_BACKGROUND_AND_SCREEN_ON");
    link = durationMetric->add_links();
    link->set_condition("APP_IS_BACKGROUND");
    link->add_key_in_main()->set_key(WAKE_LOCK_UID_KEY_ID);
@@ -238,7 +238,7 @@ static StatsdConfig build_fake_config() {
    durationMetric->mutable_bucket()->set_bucket_size_millis(30 * 1000L);
    durationMetric->set_type(DurationMetric_AggregationType_DURATION_MAX_SPARSE);
    durationMetric->set_what("WL_HELD_PER_APP_PER_NAME");
    durationMetric->set_predicate("APP_IS_BACKGROUND_AND_SCREEN_ON");
    durationMetric->set_condition("APP_IS_BACKGROUND_AND_SCREEN_ON");
    link = durationMetric->add_links();
    link->set_condition("APP_IS_BACKGROUND");
    link->add_key_in_main()->set_key(WAKE_LOCK_UID_KEY_ID);
+27 −2
Original line number Diff line number Diff line
@@ -220,6 +220,11 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l
            handleMetricWithConditions(metric.condition(), metricIndex, conditionTrackerMap,
                                       metric.links(), allConditionTrackers, conditionIndex,
                                       conditionToMetricMap);
        } else {
            if (metric.links_size() > 0) {
                ALOGW("metrics has a EventConditionLink but doesn't have a condition");
                return false;
            }
        }

        sp<MetricProducer> countProducer =
@@ -276,10 +281,15 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l

        int conditionIndex = -1;

        if (metric.has_predicate()) {
            handleMetricWithConditions(metric.predicate(), metricIndex, conditionTrackerMap,
        if (metric.has_condition()) {
            handleMetricWithConditions(metric.condition(), metricIndex, conditionTrackerMap,
                                       metric.links(), allConditionTrackers, conditionIndex,
                                       conditionToMetricMap);
        } else {
            if (metric.links_size() > 0) {
                ALOGW("metrics has a EventConditionLink but doesn't have a condition");
                return false;
            }
        }

        sp<MetricProducer> durationMetric = new DurationMetricProducer(
@@ -308,6 +318,11 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l
            handleMetricWithConditions(metric.condition(), metricIndex, conditionTrackerMap,
                                       metric.links(), allConditionTrackers, conditionIndex,
                                       conditionToMetricMap);
        } else {
            if (metric.links_size() > 0) {
                ALOGW("metrics has a EventConditionLink but doesn't have a condition");
                return false;
            }
        }

        sp<MetricProducer> eventMetric =
@@ -349,6 +364,11 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l
            handleMetricWithConditions(metric.condition(), metricIndex, conditionTrackerMap,
                                       metric.links(), allConditionTrackers, conditionIndex,
                                       conditionToMetricMap);
        } else {
            if (metric.links_size() > 0) {
                ALOGW("metrics has a EventConditionLink but doesn't have a condition");
                return false;
            }
        }

        sp<MetricProducer> valueProducer =
@@ -389,6 +409,11 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l
            handleMetricWithConditions(metric.condition(), metricIndex, conditionTrackerMap,
                                       metric.links(), allConditionTrackers, conditionIndex,
                                       conditionToMetricMap);
        } else {
            if (metric.links_size() > 0) {
                ALOGW("metrics has a EventConditionLink but doesn't have a condition");
                return false;
            }
        }

        sp<MetricProducer> gaugeProducer =
+8 −8
Original line number Diff line number Diff line
@@ -161,20 +161,20 @@ message DurationMetric {

    optional string what = 2;

    optional string condition = 3;

    repeated EventConditionLink links = 4;

    enum AggregationType {
        DURATION_SUM = 1;

        DURATION_MAX_SPARSE = 2;
    }
  optional AggregationType type = 3;

  optional string predicate = 4;
    optional AggregationType type = 5;

  repeated KeyMatcher dimension = 5;

  optional Bucket bucket = 6;
    repeated KeyMatcher dimension = 6;

  repeated EventConditionLink links = 7;
    optional Bucket bucket = 7;
}

message GaugeMetric {