diff options
Diffstat (limited to 'cmds/statsd/src/logd/LogEvent.cpp')
-rw-r--r-- | cmds/statsd/src/logd/LogEvent.cpp | 39 |
1 files changed, 11 insertions, 28 deletions
diff --git a/cmds/statsd/src/logd/LogEvent.cpp b/cmds/statsd/src/logd/LogEvent.cpp index 4bbcfd593366..625294ce5e49 100644 --- a/cmds/statsd/src/logd/LogEvent.cpp +++ b/cmds/statsd/src/logd/LogEvent.cpp @@ -156,9 +156,6 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, FieldValue(Field(mTagId, getSimpleField(1)), Value(speakerImpedance.speakerLocation))); mValues.push_back( FieldValue(Field(mTagId, getSimpleField(2)), Value(speakerImpedance.milliOhms))); - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, @@ -173,9 +170,6 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, FieldValue(Field(mTagId, getSimpleField(2)), Value(hardwareFailed.hardwareLocation))); mValues.push_back( FieldValue(Field(mTagId, getSimpleField(3)), Value(int32_t(hardwareFailed.errorCode)))); - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, @@ -190,9 +184,6 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, FieldValue(Field(mTagId, getSimpleField(2)), Value(physicalDropDetected.accelPeak))); mValues.push_back(FieldValue(Field(mTagId, getSimpleField(3)), Value(physicalDropDetected.freefallDuration))); - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, @@ -205,10 +196,6 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, mValues.push_back(FieldValue(Field(mTagId, getSimpleField(i + 1)), Value(chargeCycles.cycleBucket[i]))); } - - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, @@ -231,10 +218,6 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, Value(batteryHealthSnapshotArgs.resistanceMicroOhm))); mValues.push_back(FieldValue(Field(mTagId, getSimpleField(7)), Value(batteryHealthSnapshotArgs.levelPercent))); - - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, const SlowIo& slowIo) { @@ -247,10 +230,6 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, con FieldValue(Field(mTagId, getSimpleField(1)), Value(int32_t(slowIo.operation)))); pos[0]++; mValues.push_back(FieldValue(Field(mTagId, getSimpleField(2)), Value(slowIo.count))); - - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, @@ -261,16 +240,14 @@ LogEvent::LogEvent(int64_t wallClockTimestampNs, int64_t elapsedTimestampNs, mValues.push_back(FieldValue(Field(mTagId, getSimpleField(1)), Value(batteryCausedShutdown.voltageMicroV))); - - if (!mValues.empty()) { - mValues.back().mField.decorateLastPos(1); - } } -LogEvent::LogEvent(int32_t tagId, int64_t timestampNs) { +LogEvent::LogEvent(int32_t tagId, int64_t timestampNs) : LogEvent(tagId, timestampNs, 0) {} + +LogEvent::LogEvent(int32_t tagId, int64_t timestampNs, int32_t uid) { mLogdTimestampNs = timestampNs; mTagId = tagId; - mLogUid = 0; + mLogUid = uid; mContext = create_android_logger(1937006964); // the event tag shared by all stats logs if (mContext) { android_log_write_int64(mContext, timestampNs); @@ -344,7 +321,8 @@ bool LogEvent::write(float value) { return false; } -bool LogEvent::writeKeyValuePairs(const std::map<int32_t, int32_t>& int_map, +bool LogEvent::writeKeyValuePairs(int32_t uid, + const std::map<int32_t, int32_t>& int_map, const std::map<int32_t, int64_t>& long_map, const std::map<int32_t, std::string>& string_map, const std::map<int32_t, float>& float_map) { @@ -352,6 +330,7 @@ bool LogEvent::writeKeyValuePairs(const std::map<int32_t, int32_t>& int_map, if (android_log_write_list_begin(mContext) < 0) { return false; } + write(uid); for (const auto& itr : int_map) { if (android_log_write_list_begin(mContext) < 0) { return false; @@ -561,6 +540,10 @@ void LogEvent::init(android_log_context context) { } i++; } while ((elem.type != EVENT_TYPE_UNKNOWN) && !elem.complete); + if (isKeyValuePairAtom && mValues.size() > 0) { + mValues[0] = FieldValue(Field(android::util::KEY_VALUE_PAIRS_ATOM, getSimpleField(1)), + Value((int32_t)mLogUid)); + } } int64_t LogEvent::GetLong(size_t key, status_t* err) const { |