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

Commit f94a5187 authored by Yao Chen's avatar Yao Chen
Browse files

Revert "Reject the config if condition config has errors. And add log tag."

This reverts commit c9fa2f6d.

Change-Id: I91de13f8a102c58bbd3dfc37b09c977e78119854
parent c9fa2f6d
Loading
Loading
Loading
Loading
+15 −33
Original line number Diff line number Diff line
@@ -14,9 +14,6 @@
 * limitations under the License.
 */

#define DEBUG true  // STOPSHIP if true
#include "Log.h"

#include "../condition/CombinationConditionTracker.h"
#include "../condition/SimpleConditionTracker.h"
#include "../external/StatsPullerManager.h"
@@ -222,12 +219,9 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l

        int conditionIndex = -1;
        if (metric.has_condition()) {
            bool good = handleMetricWithConditions(
                    metric.condition(), metricIndex, conditionTrackerMap, metric.links(),
                    allConditionTrackers, conditionIndex, conditionToMetricMap);
            if (!good) {
                return false;
            }
            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");
@@ -293,12 +287,9 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l
        int conditionIndex = -1;

        if (metric.has_condition()) {
            bool good = handleMetricWithConditions(
                    metric.condition(), metricIndex, conditionTrackerMap, metric.links(),
                    allConditionTrackers, conditionIndex, conditionToMetricMap);
            if (!good) {
                return false;
            }
            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");
@@ -330,12 +321,9 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l

        int conditionIndex = -1;
        if (metric.has_condition()) {
            bool good = handleMetricWithConditions(
                    metric.condition(), metricIndex, conditionTrackerMap, metric.links(),
                    allConditionTrackers, conditionIndex, conditionToMetricMap);
            if (!good) {
                return false;
            }
            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");
@@ -380,12 +368,9 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l

        int conditionIndex = -1;
        if (metric.has_condition()) {
            bool good = handleMetricWithConditions(
                    metric.condition(), metricIndex, conditionTrackerMap, metric.links(),
                    allConditionTrackers, conditionIndex, conditionToMetricMap);
            if (!good) {
                return false;
            }
            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");
@@ -429,12 +414,9 @@ bool initMetrics(const StatsdConfig& config, const unordered_map<string, int>& l

        int conditionIndex = -1;
        if (metric.has_condition()) {
            bool good = handleMetricWithConditions(
                    metric.condition(), metricIndex, conditionTrackerMap, metric.links(),
                    allConditionTrackers, conditionIndex, conditionToMetricMap);
            if (!good) {
                return false;
            }
            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");
+0 −34
Original line number Diff line number Diff line
@@ -163,25 +163,6 @@ StatsdConfig buildMissingMatchers() {
    return config;
}

StatsdConfig buildMissingCondition() {
    StatsdConfig config;
    config.set_name("12345");

    CountMetric* metric = config.add_count_metric();
    metric->set_name("3");
    metric->set_what("SCREEN_EVENT");
    metric->mutable_bucket()->set_bucket_size_millis(30 * 1000L);
    metric->set_condition("SOME_CONDITION");

    LogEntryMatcher* eventMatcher = config.add_log_entry_matcher();
    eventMatcher->set_name("SCREEN_EVENT");

    SimpleLogEntryMatcher* simpleLogEntryMatcher = eventMatcher->mutable_simple_log_entry_matcher();
    simpleLogEntryMatcher->set_tag(2);

    return config;
}

StatsdConfig buildDimensionMetricsWithMultiTags() {
    StatsdConfig config;
    config.set_name("12345");
@@ -327,21 +308,6 @@ TEST(MetricsManagerTest, TestMissingMatchers) {
                                  trackerToMetricMap, trackerToConditionMap));
}

TEST(MetricsManagerTest, TestMissingCondition) {
    StatsdConfig config = buildMissingCondition();
    set<int> allTagIds;
    vector<sp<LogMatchingTracker>> allLogEntryMatchers;
    vector<sp<ConditionTracker>> allConditionTrackers;
    vector<sp<MetricProducer>> allMetricProducers;
    std::vector<sp<AnomalyTracker>> allAnomalyTrackers;
    unordered_map<int, std::vector<int>> conditionToMetricMap;
    unordered_map<int, std::vector<int>> trackerToMetricMap;
    unordered_map<int, std::vector<int>> trackerToConditionMap;
    EXPECT_FALSE(initStatsdConfig(config, allTagIds, allLogEntryMatchers, allConditionTrackers,
                                  allMetricProducers, allAnomalyTrackers, conditionToMetricMap,
                                  trackerToMetricMap, trackerToConditionMap));
}

TEST(MetricsManagerTest, TestCircleConditionDependency) {
    StatsdConfig config = buildCircleConditions();
    set<int> allTagIds;