Merge "Statsd: support atom counts of new atoms." into qt-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
9bfa54e7a0
@@ -432,12 +432,13 @@ void StatsdStats::notePullExceedMaxDelay(int pullAtomId) {
|
||||
void StatsdStats::noteAtomLogged(int atomId, int32_t timeSec) {
|
||||
lock_guard<std::mutex> lock(mLock);
|
||||
|
||||
if (atomId > android::util::kMaxPushedAtomId) {
|
||||
ALOGW("not interested in atom %d", atomId);
|
||||
return;
|
||||
if (atomId <= android::util::kMaxPushedAtomId) {
|
||||
mPushedAtomStats[atomId]++;
|
||||
} else {
|
||||
if (mNonPlatformPushedAtomStats.size() < kMaxNonPlatformPushedAtoms) {
|
||||
mNonPlatformPushedAtomStats[atomId]++;
|
||||
}
|
||||
}
|
||||
|
||||
mPushedAtomStats[atomId]++;
|
||||
}
|
||||
|
||||
void StatsdStats::noteSystemServerRestart(int32_t timeSec) {
|
||||
@@ -551,6 +552,7 @@ void StatsdStats::resetInternalLocked() {
|
||||
mStartTimeSec = getWallClockSec();
|
||||
mIceBox.clear();
|
||||
std::fill(mPushedAtomStats.begin(), mPushedAtomStats.end(), 0);
|
||||
mNonPlatformPushedAtomStats.clear();
|
||||
mAnomalyAlarmRegisteredStats = 0;
|
||||
mPeriodicAlarmRegisteredStats = 0;
|
||||
mSystemServerRestartSec.clear();
|
||||
@@ -705,6 +707,9 @@ void StatsdStats::dumpStats(int out) const {
|
||||
dprintf(out, "Atom %lu->%d\n", (unsigned long)i, mPushedAtomStats[i]);
|
||||
}
|
||||
}
|
||||
for (const auto& pair : mNonPlatformPushedAtomStats) {
|
||||
dprintf(out, "Atom %lu->%d\n", (unsigned long)pair.first, pair.second);
|
||||
}
|
||||
|
||||
dprintf(out, "********Pulled Atom stats***********\n");
|
||||
for (const auto& pair : mPulledAtomStats) {
|
||||
@@ -890,6 +895,14 @@ void StatsdStats::dumpStats(std::vector<uint8_t>* output, bool reset) {
|
||||
}
|
||||
}
|
||||
|
||||
for (const auto& pair : mNonPlatformPushedAtomStats) {
|
||||
uint64_t token =
|
||||
proto.start(FIELD_TYPE_MESSAGE | FIELD_ID_ATOM_STATS | FIELD_COUNT_REPEATED);
|
||||
proto.write(FIELD_TYPE_INT32 | FIELD_ID_ATOM_STATS_TAG, pair.first);
|
||||
proto.write(FIELD_TYPE_INT32 | FIELD_ID_ATOM_STATS_COUNT, pair.second);
|
||||
proto.end(token);
|
||||
}
|
||||
|
||||
for (const auto& pair : mPulledAtomStats) {
|
||||
android::os::statsd::writePullerStatsToStream(pair, &proto);
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
#include <mutex>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <unordered_map>
|
||||
|
||||
namespace android {
|
||||
namespace os {
|
||||
@@ -160,6 +161,9 @@ public:
|
||||
// Max time to do a pull.
|
||||
static const int64_t kPullMaxDelayNs = 10 * NS_PER_SEC;
|
||||
|
||||
// Maximum number of pushed atoms statsd stats will track above kMaxPushedAtomId.
|
||||
static const int kMaxNonPlatformPushedAtoms = 100;
|
||||
|
||||
// Max platform atom tag number.
|
||||
static const int32_t kMaxPlatformAtomTag = 100000;
|
||||
|
||||
@@ -508,10 +512,14 @@ private:
|
||||
|
||||
// Stores the number of times a pushed atom is logged.
|
||||
// The size of the vector is the largest pushed atom id in atoms.proto + 1. Atoms
|
||||
// out of that range will be dropped (it's either pulled atoms or test atoms).
|
||||
// out of that range will be put in mNonPlatformPushedAtomStats.
|
||||
// This is a vector, not a map because it will be accessed A LOT -- for each stats log.
|
||||
std::vector<int> mPushedAtomStats;
|
||||
|
||||
// Stores the number of times a pushed atom is logged for atom ids above kMaxPushedAtomId.
|
||||
// The max size of the map is kMaxNonPlatformPushedAtoms.
|
||||
std::unordered_map<int, int> mNonPlatformPushedAtomStats;
|
||||
|
||||
// Maps PullAtomId to its stats. The size is capped by the puller atom counts.
|
||||
std::map<int, PulledAtomStats> mPulledAtomStats;
|
||||
|
||||
@@ -587,6 +595,7 @@ private:
|
||||
FRIEND_TEST(StatsdStatsTest, TestConfigRemove);
|
||||
FRIEND_TEST(StatsdStatsTest, TestSubStats);
|
||||
FRIEND_TEST(StatsdStatsTest, TestAtomLog);
|
||||
FRIEND_TEST(StatsdStatsTest, TestNonPlatformAtomLog);
|
||||
FRIEND_TEST(StatsdStatsTest, TestTimestampThreshold);
|
||||
FRIEND_TEST(StatsdStatsTest, TestAnomalyMonitor);
|
||||
FRIEND_TEST(StatsdStatsTest, TestSystemServerCrash);
|
||||
|
||||
@@ -312,7 +312,7 @@ void GaugeMetricProducer::onDumpReportLocked(const int64_t dumpTimeNs,
|
||||
}
|
||||
}
|
||||
|
||||
void GaugeMetricProducer::prepareFistBucketLocked() {
|
||||
void GaugeMetricProducer::prepareFirstBucketLocked() {
|
||||
if (mIsActive && mIsPulled && mSamplingType == GaugeMetric::RANDOM_ONE_SAMPLE) {
|
||||
pullAndMatchEventsLocked(mCurrentBucketStartTimeNs);
|
||||
}
|
||||
|
||||
@@ -122,7 +122,7 @@ private:
|
||||
void flushCurrentBucketLocked(const int64_t& eventTimeNs,
|
||||
const int64_t& nextBucketStartTimeNs) override;
|
||||
|
||||
void prepareFistBucketLocked() override;
|
||||
void prepareFirstBucketLocked() override;
|
||||
|
||||
void pullAndMatchEventsLocked(const int64_t timestampNs);
|
||||
|
||||
|
||||
@@ -236,9 +236,9 @@ public:
|
||||
void addActivation(int activationTrackerIndex, const ActivationType& activationType,
|
||||
int64_t ttl_seconds, int deactivationTrackerIndex = -1);
|
||||
|
||||
void prepareFistBucket() {
|
||||
void prepareFirstBucket() {
|
||||
std::lock_guard<std::mutex> lock(mMutex);
|
||||
prepareFistBucketLocked();
|
||||
prepareFirstBucketLocked();
|
||||
}
|
||||
|
||||
void flushIfExpire(int64_t elapsedTimestampNs);
|
||||
@@ -272,7 +272,7 @@ protected:
|
||||
|
||||
void loadActiveMetricLocked(const ActiveMetric& activeMetric, int64_t currentTimeNs);
|
||||
|
||||
virtual void prepareFistBucketLocked() {};
|
||||
virtual void prepareFirstBucketLocked() {};
|
||||
/**
|
||||
* Flushes the current bucket if the eventTime is after the current bucket's end time. This will
|
||||
also flush the current partial bucket in memory.
|
||||
|
||||
@@ -170,7 +170,7 @@ ValueMetricProducer::~ValueMetricProducer() {
|
||||
}
|
||||
}
|
||||
|
||||
void ValueMetricProducer::prepareFistBucketLocked() {
|
||||
void ValueMetricProducer::prepareFirstBucketLocked() {
|
||||
// Kicks off the puller immediately if condition is true and diff based.
|
||||
if (mIsActive && mIsPulled && mCondition == ConditionState::kTrue && mUseDiff) {
|
||||
pullAndMatchEventsLocked(mCurrentBucketStartTimeNs, mCondition);
|
||||
|
||||
@@ -113,7 +113,7 @@ private:
|
||||
void flushCurrentBucketLocked(const int64_t& eventTimeNs,
|
||||
const int64_t& nextBucketStartTimeNs) override;
|
||||
|
||||
void prepareFistBucketLocked() override;
|
||||
void prepareFirstBucketLocked() override;
|
||||
|
||||
void dropDataLocked(const int64_t dropTimeNs) override;
|
||||
|
||||
|
||||
@@ -766,9 +766,9 @@ bool initMetricActivations(const ConfigKey& key, const StatsdConfig& config,
|
||||
return true;
|
||||
}
|
||||
|
||||
void prepareFistBucket(const vector<sp<MetricProducer>>& allMetricProducers) {
|
||||
void prepareFirstBucket(const vector<sp<MetricProducer>>& allMetricProducers) {
|
||||
for (const auto& metric: allMetricProducers) {
|
||||
metric->prepareFistBucket();
|
||||
metric->prepareFirstBucket();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -829,7 +829,7 @@ bool initStatsdConfig(const ConfigKey& key, const StatsdConfig& config, UidMap&
|
||||
return false;
|
||||
}
|
||||
|
||||
prepareFistBucket(allMetricProducers);
|
||||
prepareFirstBucket(allMetricProducers);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -92,10 +92,6 @@ bool parseProtoOutputStream(util::ProtoOutputStream& protoOutput, T* message) {
|
||||
// Returns the truncated timestamp.
|
||||
int64_t truncateTimestampNsToFiveMinutes(int64_t timestampNs);
|
||||
|
||||
inline bool isPushedAtom(int atomId) {
|
||||
return atomId <= util::kMaxPushedAtomId && atomId > 1;
|
||||
}
|
||||
|
||||
inline bool isVendorPulledAtom(int atomId) {
|
||||
return atomId >= StatsdStats::kVendorPulledAtomStartTag && atomId < StatsdStats::kMaxAtomTag;
|
||||
}
|
||||
|
||||
@@ -227,8 +227,6 @@ TEST(StatsdStatsTest, TestAtomLog) {
|
||||
stats.noteAtomLogged(android::util::SENSOR_STATE_CHANGED, now + 1);
|
||||
stats.noteAtomLogged(android::util::SENSOR_STATE_CHANGED, now + 2);
|
||||
stats.noteAtomLogged(android::util::APP_CRASH_OCCURRED, now + 3);
|
||||
// pulled event, should ignore
|
||||
stats.noteAtomLogged(android::util::WIFI_BYTES_TRANSFER, now + 4);
|
||||
|
||||
vector<uint8_t> output;
|
||||
stats.dumpStats(&output, false);
|
||||
@@ -253,6 +251,39 @@ TEST(StatsdStatsTest, TestAtomLog) {
|
||||
EXPECT_TRUE(sensorAtomGood);
|
||||
}
|
||||
|
||||
TEST(StatsdStatsTest, TestNonPlatformAtomLog) {
|
||||
StatsdStats stats;
|
||||
time_t now = time(nullptr);
|
||||
int newAtom1 = android::util::kMaxPushedAtomId + 1;
|
||||
int newAtom2 = android::util::kMaxPushedAtomId + 2;
|
||||
|
||||
stats.noteAtomLogged(newAtom1, now + 1);
|
||||
stats.noteAtomLogged(newAtom1, now + 2);
|
||||
stats.noteAtomLogged(newAtom2, now + 3);
|
||||
|
||||
vector<uint8_t> output;
|
||||
stats.dumpStats(&output, false);
|
||||
StatsdStatsReport report;
|
||||
bool good = report.ParseFromArray(&output[0], output.size());
|
||||
EXPECT_TRUE(good);
|
||||
|
||||
EXPECT_EQ(2, report.atom_stats_size());
|
||||
bool newAtom1Good = false;
|
||||
bool newAtom2Good = false;
|
||||
|
||||
for (const auto& atomStats : report.atom_stats()) {
|
||||
if (atomStats.tag() == newAtom1 && atomStats.count() == 2) {
|
||||
newAtom1Good = true;
|
||||
}
|
||||
if (atomStats.tag() == newAtom2 && atomStats.count() == 1) {
|
||||
newAtom2Good = true;
|
||||
}
|
||||
}
|
||||
|
||||
EXPECT_TRUE(newAtom1Good);
|
||||
EXPECT_TRUE(newAtom2Good);
|
||||
}
|
||||
|
||||
TEST(StatsdStatsTest, TestPullAtomStats) {
|
||||
StatsdStats stats;
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ TEST(GaugeMetricProducerTest, TestFirstBucket) {
|
||||
logEventMatcherIndex, eventMatcherWizard,
|
||||
-1, -1, tagId, 5, 600 * NS_PER_SEC + NS_PER_SEC / 2,
|
||||
pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
|
||||
EXPECT_EQ(600500000000, gaugeProducer.mCurrentBucketStartTimeNs);
|
||||
@@ -126,7 +126,7 @@ TEST(GaugeMetricProducerTest, TestPulledEventsNoCondition) {
|
||||
tagId, -1, tagId, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
allData.clear();
|
||||
@@ -211,7 +211,7 @@ TEST(GaugeMetricProducerTest, TestPushedEventsWithUpgrade) {
|
||||
logEventMatcherIndex, eventMatcherWizard,
|
||||
-1 /* -1 means no pulling */, -1, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
sp<AnomalyTracker> anomalyTracker = gaugeProducer.addAnomalyTracker(alert, alarmMonitor);
|
||||
EXPECT_TRUE(anomalyTracker != nullptr);
|
||||
@@ -303,7 +303,7 @@ TEST(GaugeMetricProducerTest, TestPulledWithUpgrade) {
|
||||
GaugeMetricProducer gaugeProducer(kConfigKey, metric, -1 /*-1 meaning no condition*/, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, tagId, -1, tagId,
|
||||
bucketStartTimeNs, bucketStartTimeNs, pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
shared_ptr<LogEvent> event = make_shared<LogEvent>(tagId, bucketStartTimeNs + 1);
|
||||
@@ -370,7 +370,7 @@ TEST(GaugeMetricProducerTest, TestPulledWithAppUpgradeDisabled) {
|
||||
logEventMatcherIndex, eventMatcherWizard,
|
||||
tagId, -1, tagId, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
shared_ptr<LogEvent> event = make_shared<LogEvent>(tagId, bucketStartTimeNs + 1);
|
||||
@@ -431,7 +431,7 @@ TEST(GaugeMetricProducerTest, TestPulledEventsWithCondition) {
|
||||
GaugeMetricProducer gaugeProducer(kConfigKey, metric, 1, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, tagId, -1, tagId,
|
||||
bucketStartTimeNs, bucketStartTimeNs, pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
gaugeProducer.onConditionChanged(true, bucketStartTimeNs + 8);
|
||||
EXPECT_EQ(1UL, gaugeProducer.mCurrentSlicedBucket->size());
|
||||
@@ -529,7 +529,7 @@ TEST(GaugeMetricProducerTest, TestPulledEventsWithSlicedCondition) {
|
||||
GaugeMetricProducer gaugeProducer(kConfigKey, metric, 1, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, tagId, -1, tagId,
|
||||
bucketStartTimeNs, bucketStartTimeNs, pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
gaugeProducer.onSlicedConditionMayChange(true, bucketStartTimeNs + 8);
|
||||
|
||||
@@ -583,7 +583,7 @@ TEST(GaugeMetricProducerTest, TestPulledEventsAnomalyDetection) {
|
||||
logEventMatcherIndex, eventMatcherWizard,
|
||||
tagId, -1, tagId, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
Alert alert;
|
||||
alert.set_id(101);
|
||||
@@ -692,7 +692,7 @@ TEST(GaugeMetricProducerTest, TestPullOnTrigger) {
|
||||
logEventMatcherIndex, eventMatcherWizard,
|
||||
tagId, triggerId, tagId, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
|
||||
@@ -777,7 +777,7 @@ TEST(GaugeMetricProducerTest, TestRemoveDimensionInOutput) {
|
||||
logEventMatcherIndex, eventMatcherWizard,
|
||||
tagId, triggerId, tagId, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
gaugeProducer.prepareFistBucket();
|
||||
gaugeProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
|
||||
|
||||
@@ -105,7 +105,7 @@ class ValueMetricProducerTestHelper {
|
||||
kConfigKey, metric, -1 /*-1 meaning no condition*/, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, tagId,
|
||||
bucketStartTimeNs, bucketStartTimeNs, pullerManager);
|
||||
valueProducer->prepareFistBucket();
|
||||
valueProducer->prepareFirstBucket();
|
||||
return valueProducer;
|
||||
}
|
||||
|
||||
@@ -125,7 +125,7 @@ class ValueMetricProducerTestHelper {
|
||||
new ValueMetricProducer(kConfigKey, metric, 1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
valueProducer->prepareFistBucket();
|
||||
valueProducer->prepareFirstBucket();
|
||||
valueProducer->mCondition = ConditionState::kFalse;
|
||||
return valueProducer;
|
||||
}
|
||||
@@ -169,7 +169,7 @@ TEST(ValueMetricProducerTest, TestCalcPreviousBucketEndTime) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1 /*-1 meaning no condition*/, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, -1, startTimeBase,
|
||||
22, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
EXPECT_EQ(startTimeBase, valueProducer.calcPreviousBucketEndTime(60 * NS_PER_SEC + 10));
|
||||
EXPECT_EQ(startTimeBase, valueProducer.calcPreviousBucketEndTime(60 * NS_PER_SEC + 10));
|
||||
@@ -199,7 +199,7 @@ TEST(ValueMetricProducerTest, TestFirstBucket) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1 /*-1 meaning no condition*/, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, -1, 5,
|
||||
600 * NS_PER_SEC + NS_PER_SEC / 2, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
EXPECT_EQ(600500000000, valueProducer.mCurrentBucketStartTimeNs);
|
||||
EXPECT_EQ(10, valueProducer.mCurrentBucketNum);
|
||||
@@ -381,7 +381,7 @@ TEST(ValueMetricProducerTest, TestPulledEventsWithFiltering) {
|
||||
kConfigKey, metric, -1 /*-1 meaning no condition*/, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, tagId,
|
||||
bucketStartTimeNs, bucketStartTimeNs, pullerManager);
|
||||
valueProducer->prepareFistBucket();
|
||||
valueProducer->prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
allData.clear();
|
||||
@@ -670,7 +670,7 @@ TEST(ValueMetricProducerTest, TestPushedEventsWithUpgrade) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -728,7 +728,7 @@ TEST(ValueMetricProducerTest, TestPulledValueWithUpgrade) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
allData.clear();
|
||||
@@ -779,7 +779,7 @@ TEST(ValueMetricProducerTest, TestPulledWithAppUpgradeDisabled) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
allData.clear();
|
||||
@@ -854,7 +854,7 @@ TEST(ValueMetricProducerTest, TestPushedEventsWithoutCondition) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -897,7 +897,7 @@ TEST(ValueMetricProducerTest, TestPushedEventsWithCondition) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, 1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
valueProducer.mCondition = ConditionState::kFalse;
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
@@ -972,7 +972,7 @@ TEST(ValueMetricProducerTest, TestAnomalyDetection) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1 /*-1 meaning no condition*/, wizard,
|
||||
logEventMatcherIndex, eventMatcherWizard, -1 /*not pulled*/,
|
||||
bucketStartTimeNs, bucketStartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
sp<AnomalyTracker> anomalyTracker = valueProducer.addAnomalyTracker(alert, alarmMonitor);
|
||||
|
||||
@@ -1269,7 +1269,7 @@ TEST(ValueMetricProducerTest, TestPushedAggregateMin) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -1314,7 +1314,7 @@ TEST(ValueMetricProducerTest, TestPushedAggregateMax) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -1361,7 +1361,7 @@ TEST(ValueMetricProducerTest, TestPushedAggregateAvg) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -1412,7 +1412,7 @@ TEST(ValueMetricProducerTest, TestPushedAggregateSum) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -1458,7 +1458,7 @@ TEST(ValueMetricProducerTest, TestSkipZeroDiffOutput) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -1532,7 +1532,7 @@ TEST(ValueMetricProducerTest, TestSkipZeroDiffOutputMultiValue) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, -1, bucketStartTimeNs, bucketStartTimeNs,
|
||||
pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
shared_ptr<LogEvent> event1 = make_shared<LogEvent>(tagId, bucketStartTimeNs + 10);
|
||||
event1->write(1);
|
||||
@@ -2081,7 +2081,7 @@ TEST(ValueMetricProducerTest, TestResetBaseOnPullTooLate) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, 1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucket2StartTimeNs,
|
||||
bucket2StartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
valueProducer.mCondition = ConditionState::kFalse;
|
||||
|
||||
// Event should be skipped since it is from previous bucket.
|
||||
@@ -2862,7 +2862,7 @@ TEST(ValueMetricProducerTest, TestPullNeededFastDump) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
ProtoOutputStream output;
|
||||
std::set<string> strSet;
|
||||
@@ -2905,7 +2905,7 @@ TEST(ValueMetricProducerTest, TestFastDumpWithoutCurrentBucket) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
vector<shared_ptr<LogEvent>> allData;
|
||||
allData.clear();
|
||||
@@ -2969,7 +2969,7 @@ TEST(ValueMetricProducerTest, TestPullNeededNoTimeConstraints) {
|
||||
ValueMetricProducer valueProducer(kConfigKey, metric, -1, wizard, logEventMatcherIndex,
|
||||
eventMatcherWizard, tagId, bucketStartTimeNs,
|
||||
bucketStartTimeNs, pullerManager);
|
||||
valueProducer.prepareFistBucket();
|
||||
valueProducer.prepareFirstBucket();
|
||||
|
||||
ProtoOutputStream output;
|
||||
std::set<string> strSet;
|
||||
|
||||
Reference in New Issue
Block a user