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

This commit is contained in:
Yao Chen
2017-11-27 22:02:29 +00:00
committed by Android (Google) Code Review
2 changed files with 15 additions and 67 deletions

View File

@@ -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"
@@ -224,12 +221,9 @@ bool initMetrics(const ConfigKey& key, const StatsdConfig& config,
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");
@@ -295,12 +289,9 @@ bool initMetrics(const ConfigKey& key, const StatsdConfig& config,
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");
@@ -332,12 +323,9 @@ bool initMetrics(const ConfigKey& key, const StatsdConfig& config,
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");
@@ -382,12 +370,9 @@ bool initMetrics(const ConfigKey& key, const StatsdConfig& config,
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");
@@ -431,12 +416,9 @@ bool initMetrics(const ConfigKey& key, const StatsdConfig& config,
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");

View File

@@ -165,25 +165,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");
@@ -329,21 +310,6 @@ TEST(MetricsManagerTest, TestMissingMatchers) {
conditionToMetricMap, 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;